當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動化
[導(dǎo)讀]由于Verilog HDL和 VHDL 行為描述用于綜合的歷史還只有短短的幾年,可綜合風(fēng)格的Verilog HDL 和VHDL的語法只是它們各自語言的一個子集。又由于HDL的可綜合性研究近年來非?;钴S,可綜合子集的國際標(biāo)準(zhǔn)目前尚未最后形

由于Verilog HDL和 VHDL 行為描述用于綜合的歷史還只有短短的幾年,可綜合風(fēng)格的Verilog HDL 和VHDL的語法只是它們各自語言的一個子集。又由于HDL的可綜合性研究近年來非?;钴S,可綜合子集的國際標(biāo)準(zhǔn)目前尚未最后形成,因此各廠商的綜合器所支持的HDL子集也略有所不同。

本書中有關(guān)可綜合風(fēng)格的Verilog HDL的內(nèi)容,我們只著重介紹RTL級、算法級和門級邏輯結(jié)構(gòu)的描述,而系統(tǒng)級(數(shù)據(jù)流級)的綜合由于還不太成熟,暫不作介紹。

由于寄存器傳輸級(RTL)描述是以時序邏輯抽象所得到的有限狀態(tài)機(jī)為依據(jù)的,所以把一個時序邏輯抽象成一個同步有限狀態(tài)機(jī)是設(shè)計(jì)可綜合風(fēng)格的Verilog HDL模塊的關(guān)鍵。

在本章中我們將通過各種實(shí)例由淺入深地來介紹各種可綜合風(fēng)格的Verilog HDL模塊,并把重點(diǎn)放在時序邏輯的可綜合有限狀態(tài)機(jī)的Verilog HDL設(shè)計(jì)要點(diǎn)。至于組合邏輯,因?yàn)楸容^簡單,只需閱讀典型的用Verilog HDL描述的可綜合的組合邏輯的例子就可以掌握。

為了更好地掌握可綜合風(fēng)格,還需要較深入地了解阻塞和非阻塞賦值的差別和在不同的情況下正確使用這兩種賦值的方法。只有深入地理解阻塞和非阻塞賦值語句的細(xì)微不同,才有可能寫出不僅可以仿真也可以綜合的Verilog HDL模塊。

只要按照一定的原則來編寫代碼就可以保證Verilog模塊綜合前和綜合后仿真的一致性。符合這樣條件的可綜合模塊是我們設(shè)計(jì)的目標(biāo),因?yàn)檫@種代碼是可移植的,可綜合到不同的FPGA和不同工藝的ASIC中,是具有知識產(chǎn)權(quán)價值的軟核。

4.4.1 有限狀態(tài)機(jī)(FSM)設(shè)計(jì)原理

有限狀態(tài)機(jī)是由寄存器組和組合邏輯構(gòu)成的硬件時序電路。有限狀態(tài)機(jī)的狀態(tài)(即由寄存器組的1和0的組合狀態(tài)所構(gòu)成的有限個狀態(tài))只可能在同一時鐘跳變沿的情況下才能從一個狀態(tài)轉(zhuǎn)向另一個狀態(tài)。

有限狀態(tài)機(jī)的下一個狀態(tài)不但取決于各個輸入值,還取決于當(dāng)前所在狀態(tài)。這里指的是米里Mealy型有限狀態(tài)機(jī),而莫爾Moore型有限狀態(tài)機(jī)的下一個狀態(tài)只決于當(dāng)前狀態(tài)。

Verilog HDL中可以用許多種方法來描述有限狀態(tài)機(jī),最常用的方法是用always語句和case語句。如圖4.1所示的狀態(tài)轉(zhuǎn)移圖表示了一個有限狀態(tài)機(jī),例4.1的程序就是該有限狀態(tài)機(jī)的多種Verilog HDL模型之一。

圖4.1的狀態(tài)轉(zhuǎn)移圖表示了一個四狀態(tài)的有限狀態(tài)機(jī)。它的同步時鐘是Clock,輸入信號是A和Reset,輸出信號是F和G。

狀態(tài)的轉(zhuǎn)移只能在同步時鐘(Clock)的上升沿時發(fā)生,往哪個狀態(tài)的轉(zhuǎn)移則取決于目前所在的狀態(tài)和輸入的信號(Reset和A)。下面的例子是該有限狀態(tài)機(jī)的Verilog HDL模型之一。

例4.1:Gray碼有限狀態(tài)機(jī)模型1。

module  fsm (Clock, Reset, A,  F, G);           //模塊聲明
      input Clock, Reset, A;
      output F,G;
      reg F,G;
      reg [1:0] state ;

      parameter                                      //狀態(tài)聲明
            Idle  = 2’b00,  Start = 2’b01,
            Stop = 2’b10, Clear = 2’b11;

      always @(posedge Clock)
            if (!Reset) begin
                 state <= Idle;  F<=0; G<=0;      //默認(rèn)狀態(tài)
            end
            else case (state)
                  idle:  begin                       //Idle狀態(tài)
                        if (A)  begin
                              state <= Start;
                              G<=0;
                        end
                        elsestate <= idle;
                  end
                  start:                              //Start狀態(tài)
                       if (!A)  state <= Stop;
                       else    state <= start;
                  Stop:  begin                       //Stop狀態(tài)
                       if (A) begin
                             state <= Clear;
                             F <= 1;
                       end
                       else   state <= Stop;
                       end
                  Clear: begin                        //Clear狀態(tài)
                        if (!A)  begin 
                             state <=Idle;
                             F <=0; G <=1;
                        end
                  else   state <= Clear;
                  end
            endcase
endmodule

也可以用下面的Verilog HDL模型來表示同一個有限狀態(tài)。


例4.2:獨(dú)熱碼有限狀態(tài)和模型。

module  fsm (Clock, Reset, A,  F, G);         //模塊聲明
      input Clock, Reset, A;
      output F,G;
      reg F,G;
      reg [3:0] state ;

      parameter                                    //狀態(tài)聲明
           Idle     = 4’b1000, 
           Start    = 4’b0100, 
           Stop     = 4’b0010,
           Clear    = 4’b0001;

      always @(posedge clock)
           if (!Reset) begin
                 state <= Idle;  F<=0; G<=0;    //默認(rèn)狀態(tài)
           end
           else case (state)
                 Idle:  begin                      //Idel狀態(tài)
                      if (A)  begin
                            state <= Start;
                            G<=0;
                            end
                      else state <= Idle;
                 end
                 Start:                             //Start狀態(tài)
                       if (!A)  state <= Stop;
                             else  state <= Start;
                 Stop:  begin                      //Stop狀態(tài)
                       if (A) begin
                                  state <= Clear;
                                  F <= 1;
                             end
                       else  state <= Stop;
                 end
                 Clear: begin                      //Clear狀態(tài)
                       if (!A)  begin 
                             state <=Idle;
                             F<=0;  G<=1;
                       end
                       else   state <= Clear;
                 end
                 default:  state <=Idle;         //默認(rèn)狀態(tài)
            endcase
endmodule


例4.2與例4.1的主要不同點(diǎn)是狀態(tài)編碼方式。例4.2采用了獨(dú)熱編碼,而例4.1則采用Gray碼,究竟采用哪一種編碼好要看具體情況而定。


對于用FPGA實(shí)現(xiàn)的有限狀態(tài)機(jī)建議采用獨(dú)熱碼。因?yàn)殡m然采用獨(dú)熱編碼多用了兩個觸發(fā)器,但所用組合電路可省下許多,因而使電路的速度和可靠性有顯著提高,而總的單元數(shù)并無顯著增加。


采用了獨(dú)熱碼后有了多余的狀態(tài),就有一些不可到達(dá)的狀態(tài),為此在CASE語句的最后需要增加default分支項(xiàng),以確保多余狀態(tài)能回到Idle狀態(tài)。


另外還可以用另一種風(fēng)格的Verilog HDL模型來表示同一個有限狀態(tài)。在這個模型中,我們用always語句和連續(xù)賦值語句把狀態(tài)機(jī)的觸發(fā)器部分和組合邏輯部分分成兩部分來描述,如下所示。


例4.3:有限狀態(tài)機(jī)模型3

module  fsm (Clock, Reset, A,  F, G);               //模塊聲明
      input Clock, Reset, A;
      output F,G;
      reg [1:0] state ;
      wire [1:0] Nextstate;

      parameter                                         //狀態(tài)聲明
           Idle  = 2’b00,  Start = 2’b01, 
           Stop = 2’b10,   Clear = 2’b11;

      always @(posedge Clock)
           if (!Reset) begin
                 state <= Idle;                        //復(fù)位狀態(tài)
           end
           else
                state <= Nextstate;                   //狀態(tài)轉(zhuǎn)換

      assign Nextstate =                              //狀態(tài)變換條件
           (state == Idle ) ?   (A ?  Start : Idle):
           (state==Start ) ?   (!A ?  Stop  : Start ):
           (state== Stop ) ?   (A ?  Clear : Stop ):
           (state== Clear) ?   (!A ?  Idle   : Clear) : Idle;

      assign   F  = (( state == Stop) && A );       //狀態(tài)輸出
      assign   G =  (( state == Clear) && (!A || !Reset)) //狀態(tài)輸出
endmodule

 

下面是第4種風(fēng)格的Verilog HDL模型來表示同一個有限狀態(tài)。在這個模型中,我們分別用沿觸發(fā)的always語句和電平敏感的always語句把狀態(tài)機(jī)的觸發(fā)器部分和組合邏輯部分分成兩部分來描述。


例4.4:有限狀態(tài)機(jī)模型4。

module  fsm (Clock, Reset, A,  F, G);           //模塊聲明
      input Clock, Reset, A;
      output F,G;
      reg [1:0] state, Nextstate;

      parameter                                      //狀態(tài)聲明
           Idle  = 2’b00,  Start = 2’b01, 
           Stop = 2’b10, Clear = 2’b11;

      always @(posedge Clock)
           if (!Reset) begin
                 state <= Idle;                   //默認(rèn)狀態(tài)
           end
           else
                 state <= Nextstate;             //狀態(tài)轉(zhuǎn)換

      always @( state or A ) begin
           F=0;
           G=0;
           if (state == Idle) begin             //處于Idel狀態(tài)時,對A判斷
                 if (A)
                      Nextstate  =  Start;        //Start狀態(tài)
                 else
                      Nextstate  =  Idle;         //保持Idel狀態(tài)
                 G=1;
           end
           else if (state == Start)             //處于Start狀態(tài)時,對!A判斷
                 if (!A)
                      Nextstate  =  Stop;         //Stop狀態(tài)
                 else
                      Nextstate  =  Start;        //保持Start狀態(tài)
           else if (state == Stop)               //處于Stop狀態(tài)時,對A判斷
                 if (A)
                      Nextstate  =  Clear;        //Clear狀態(tài)
                 else
                      Nextstate  =  Stop;         //保持Stop狀態(tài)
           else if (state == Clear) begin      //處于Clear狀態(tài)時,對!A判斷
                 if (!A)
                      Nextstate  =  Idle;         //Idel狀態(tài)
                 else
                      Nextstate  =  Clear;        //保持Clear狀態(tài)
                 F=1;
                 end
           else
                 Nextstate= Idle;                 //默認(rèn)狀態(tài)
      End
endmodule

 

上面4個例子是同一個狀態(tài)機(jī)的4種不同的Verilog HDL模型,它們都是可綜合的,在設(shè)計(jì)復(fù)雜程度不同的狀態(tài)機(jī)時有它們各自的優(yōu)勢。如用不同的綜合器對這4個例子進(jìn)行綜合,綜合出的邏輯電路可能會有些不同,但邏輯功能是相同的。


下面講解有限狀態(tài)機(jī)設(shè)計(jì)的一般步驟。


(1)邏輯抽象,得出狀態(tài)轉(zhuǎn)換圖。
就是把給出的一個實(shí)際邏輯關(guān)系表示為時序邏輯函數(shù),可以用狀態(tài)轉(zhuǎn)換表來描述,也可以用狀態(tài)轉(zhuǎn)換圖來描述,這就需要完成以下任務(wù)。


① 分析給定的邏輯問題,確定輸入變量、輸出變量以及電路的狀態(tài)數(shù)。通常是取原因(或條件)作為輸入變量,取結(jié)果作為輸出變量。
② 定義輸入、輸出邏輯狀態(tài)的含意,并將電路狀態(tài)順序編號。
③ 按照要求列出電路的狀態(tài)轉(zhuǎn)換表或畫出狀態(tài)轉(zhuǎn)換圖。
這樣,就把給定的邏輯問題抽象到一個時序邏輯函數(shù)了。


(2)狀態(tài)化簡。
如果在狀態(tài)轉(zhuǎn)換圖中出現(xiàn)這樣兩個狀態(tài),它們在相同的輸入下轉(zhuǎn)換到同一狀態(tài)去,并得到一樣的輸出,則稱它們?yōu)榈葍r狀態(tài)。顯然等價狀態(tài)是重復(fù)的,可以合并為一個。電路的狀態(tài)數(shù)越少,存儲電路也就越簡單。狀態(tài)化簡的目的就在于將等價狀態(tài)盡可能地合并,以得到最簡的狀態(tài)轉(zhuǎn)換圖。


(3)狀態(tài)分配。
狀態(tài)分配又稱狀態(tài)編碼。通常有很多編碼方法,編碼方案選擇得當(dāng),設(shè)計(jì)的電路可以很簡單。反之,若編碼方案選得不好,則設(shè)計(jì)的電路就會復(fù)雜許多。


實(shí)際設(shè)計(jì)時,需綜合考慮電路復(fù)雜度與電路性能之間的折衷。在觸發(fā)器資源豐富的FPGA或ASIC設(shè)計(jì)中,采用獨(dú)熱編碼(one-hot-coding)既可以使電路性能得到保證,又可充分利用其觸發(fā)器數(shù)量多的優(yōu)勢。


(4)選定觸發(fā)器的類型并求出狀態(tài)方程、驅(qū)動方程和輸出方程。


(5)按照方程得出邏輯圖。

用Verilog HDL來描述有限狀態(tài)機(jī),可以充分發(fā)揮硬件描述語言的抽象建模能力,使用always塊語句和case(if)等條件語句及賦值語句即可方便實(shí)現(xiàn)。具體的邏輯化簡及邏輯電路到觸發(fā)器映射均可由計(jì)算機(jī)自動完成。上述設(shè)計(jì)步驟中的第(2)、(4)、(5)步不再需要很多的人為干預(yù),使電路設(shè)計(jì)工作得到簡化,效率也有很大的提高。


4.4.2  FSM設(shè)計(jì)實(shí)例


例4.5:宇宙飛船控制器的狀態(tài)機(jī)。

module  statmch1(   launch_shuttle, land_shuttle, start_countdown,
                       start_trip_meter, clk, all_systems_go,
                       just_launched, is_landed, cnt, abort_mission
                       );
      // I/O說明
      output launch_shuttle, land_shuttle, start_countdown,start_trip_meter;
      input  clk, just_launched, is_landed, abort_mission,all_systems_go;
      input  [3:0]  cnt;
      reg    launch_shuttle, land_shuttle, start_countdown,start_trip_meter;
      reg  [4:0]  present_state,  next_state;
      //設(shè)置獨(dú)熱碼狀態(tài)的參數(shù)
      parameter  HOLD=5'h1, SEQUENCE=5'h2, LAUNCH=5'h4;
      parameter  ON_MISSION=5'h8, LAND=5'h10;

      always @(negedge clk or posedge abort_mission) begin
            //把輸出設(shè)置成某個缺省值,在下面的case語句中就不必再設(shè)置輸出的缺省值
            {launch_shuttle, land_shuttle, start_trip_meter, start_countdown} = 4'b0;
            //檢查異步reset的值,即abort_mission的值
            if(abort_mission)
                 next_state = LAND;
            else begin
                 //如果abort_mission為零,把next_state賦值為present_state
                 next_state = present_state;
                 //根據(jù) present_state 和輸入信號,設(shè)置 next_state和輸出output
                 case ( present_state )
                      HOLD:                               //HOLD狀態(tài)
                            if(all_systems_go) begin
                                 next_state = SEQUENCE;
                                 start_countdown = 1;
                            end
                      SEQUENCE:                          //SEQUENCE狀態(tài)
                            if(cnt==0)
                                 next_state = LAUNCH;
                      LAUNCH: begin                     //LAUNCH狀態(tài)
                            next_state = ON_MISSION;
                            launch_shuttle = 1;
                            end
                      ON_MISSION:                       //ON_MISSION狀態(tài)
                            if(just_launched)
                                 start_trip_meter = 1; //取消使命前,一直留在使命狀態(tài)
                      LAND:                              //LAND狀態(tài)
                           if(is_landed)
                                 next_state = HOLD;
                           else land_shuttle = 1;
                      default:  next_state = 'bx;//把缺省狀態(tài)設(shè)置為'bx(無關(guān))或某種已
                                                    //知狀態(tài),使其在做仿真時,在復(fù)位前就
                                                    //與實(shí)際情況相一致
                 endcase
           end                   // if-else語句結(jié)束
           present_state = next_state;        //把當(dāng)前狀態(tài)變量設(shè)置為下一狀態(tài),
                                                   //待下一有效時鐘沿來到時,當(dāng)前狀
                                                    //態(tài)變量已設(shè)置了正確的狀態(tài)值
     end                         //always塊結(jié)束
endmodule


4.4.3  設(shè)計(jì)可綜合狀態(tài)機(jī)的指導(dǎo)原則
(1)獨(dú)熱碼。
因?yàn)榇蠖鄶?shù)FPGA內(nèi)部的觸發(fā)器數(shù)目相當(dāng)多,又加上獨(dú)熱碼狀態(tài)機(jī)(one hot state machine)的譯碼邏輯最為簡單,所以在設(shè)計(jì)采用FPGA實(shí)現(xiàn)的狀態(tài)機(jī)時,往往采用獨(dú)熱碼狀態(tài)機(jī)(即每個狀態(tài)只有一個寄存器置位的狀態(tài)機(jī))。


(2)case語句。
建議采用case、casex或casez語句來建立狀態(tài)機(jī)的模型。因?yàn)檫@些語句表達(dá)清晰明了,可以方便地從當(dāng)前狀態(tài)分支轉(zhuǎn)向下一個狀態(tài)并設(shè)置輸出。


采用這些語句設(shè)計(jì)狀態(tài)機(jī)時,不要忘記寫上case語句的最后一個分支default,并將狀態(tài)變量設(shè)為'bx。這就等于告知綜合器:case語句已經(jīng)指定了所有的狀態(tài)。這樣綜合器就可以刪除不需要的譯碼電路,使生成的電路簡潔,并與設(shè)計(jì)要求一致。


如果將缺省狀態(tài)設(shè)置為某一確定的狀態(tài)(例如:設(shè)置default:state = state1),行不行呢?”這樣做有一個問題需要注意:因?yàn)楸M管綜合器產(chǎn)生的邏輯和設(shè)置“default:state='bx”時相同,但是狀態(tài)機(jī)的Verilog HDL模型綜合前和綜合后的仿真結(jié)果會不一致。


為什么會是這樣呢?因?yàn)閱臃抡嫫鲿r,狀態(tài)機(jī)所有的輸入都不確定,因此立即進(jìn)入default狀態(tài)。如果通過設(shè)置將狀態(tài)變量設(shè)為state1,但是實(shí)際硬件電路的狀態(tài)機(jī)在通電之后,進(jìn)入的狀態(tài)是不確定的,很可能不是state1的狀態(tài),這樣就會產(chǎn)生不必要的沖突。


因此,還是設(shè)置“default:state='bx”與實(shí)際硬件電路相一致。但在有多余狀態(tài)的情況下還是應(yīng)將缺省狀態(tài)設(shè)置為某一確定的有效狀態(tài),因?yàn)檫@樣做能使?fàn)顟B(tài)機(jī)若偶然進(jìn)入多余狀態(tài)后仍能在下一時鐘跳變沿時返回正常工作狀態(tài),否則會引起死鎖。


(3)復(fù)位。
狀態(tài)機(jī)應(yīng)該有一個異步或同步復(fù)位端,以便在通電時將硬件電路復(fù)位到有效狀態(tài),也可以在操作中將硬件電路復(fù)位(大多數(shù)FPGA結(jié)構(gòu)都允許使用異步復(fù)位端)。


(4)惟一觸發(fā)。
目前大多數(shù)綜合器往往不支持在一個always塊中由多個事件觸發(fā)的狀態(tài)機(jī)(即隱含狀態(tài)機(jī),implicit state machines)。因此為了能綜合出有效的電路,用Verilog HDL描述的狀態(tài)機(jī)應(yīng)明確地由惟一時鐘觸發(fā)。


(5)異步狀態(tài)機(jī)。
異步狀態(tài)機(jī)是沒有確定時鐘的狀態(tài)機(jī),它的狀態(tài)轉(zhuǎn)移不是由惟一的時鐘跳變沿所觸發(fā)。目前大多數(shù)綜合器不能綜合采用Verilog HDL描述的異步狀態(tài)機(jī)。


因此應(yīng)盡量不要使用綜合工具來設(shè)計(jì)異步狀態(tài)機(jī)。因?yàn)槟壳按蠖鄶?shù)綜合工具在對異步狀態(tài)機(jī)進(jìn)行邏輯優(yōu)化時會胡亂地簡化邏輯,使綜合后的異步狀態(tài)機(jī)不能正常工作。如果一定要設(shè)計(jì)異步狀態(tài)機(jī),建議采用電路圖輸入的方法,而不要用Verilog HDL輸入的方法。


(6)狀態(tài)賦值。
Verilog HDL中,狀態(tài)必須明確賦值,通常使用參數(shù)parameters或宏定義define語句加上賦值語句來實(shí)現(xiàn)。


使用參數(shù)parameters語句賦狀態(tài)值如下所示:

parameter  state1 = 2 'h1,  state2 = 2 'h2;
...
current_state = state2;           //把current state設(shè)置成 2'h2
...

使用宏定義define語句賦狀態(tài)值如下所示:

'define state1  2 'h1
'define state2  2 'h2
...
current_state = 'state2;           //把current state設(shè)置成 2 'h2

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉