www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > EDA > 電子設計自動化
[導讀]數(shù)字電路設計工程師一般都學習過編程語言、數(shù)字邏輯基礎、各種EDA軟件工具的使用。就編程語言而言,國內外大多數(shù)學校都以C語言為標準,只有少部分學校使用Pascal 和Fortran。算法的描述和驗證常用C語言來做。例如要

數(shù)字電路設計工程師一般都學習過編程語言、數(shù)字邏輯基礎、各種EDA軟件工具的使用。就編程語言而言,國內外大多數(shù)學校都以C語言為標準,只有少部分學校使用Pascal 和Fortran。

算法的描述和驗證常用C語言來做。例如要設計Reed-Solomen編碼/解碼器,可以分為下面幾個步驟。

先深入了解Reed-Solomen編碼/解碼的算法。

編寫C語言的程序來驗證算法的正確性。

運行描述編碼器的C語言程序,把在數(shù)據(jù)文件中的多組待編碼的數(shù)據(jù)轉換為相應的編碼后數(shù)據(jù),并存入文件。

編寫一個加干擾用的C語言程序,用于模擬信道。它能產生隨機誤碼位(并把誤碼位個數(shù)控制在糾錯能力范圍內),將其加入編碼后的數(shù)據(jù)文件中。運行該加干擾程序,產生帶誤碼位的編碼后的數(shù)據(jù)文件。

編寫一個解碼器的C語言程序,運行該程序把帶誤碼位的編碼文件解碼為另一個數(shù)據(jù)文件。

比較原始數(shù)據(jù)文件和生成的文件,便可知道編碼和解碼的程序是否正確(能否自動糾正糾錯能力范圍內的錯碼位),用這種方法我們就可以來驗證算法的正確性。但這樣的數(shù)據(jù)處理其運行速度只與程序的大小和計算機的運行速度有關,也不能獨立于計算機而存在。

如果要設計一個專門的電路來進行這種對速度有要求的實時數(shù)據(jù)處理,除了以上介紹的C程序外,還需編寫硬件描述語言(如Verilog HDL或 VHDL)的程序。然后進行仿真以便從電路結構上保證算法能在規(guī)定的時間內完成,并能與前端和后端的設備或器件正確無誤地交換數(shù)據(jù)。

用硬件描述語言(HDL)的程序設計硬件的好處在于易于理解、易于維護,調試電路速度快,有許多的易于掌握的仿真、綜合和布局布線工具,還可以用C語言配合HDL來做邏輯設計的前后仿真,驗證功能是否正確。

在算法硬件電路的研制過程中,計算電路的結構和芯片的工藝對運行速度有很大的影響。所以在電路結構確定之前,必須經(jīng)過多次仿真。

C語言的功能仿真。

C語言的并行結構仿真。

Verilog HDL的行為仿真。

Verilog HDL RTL級仿真。

綜合后門級結構仿真。

布局布線后仿真。

電路實現(xiàn)驗證。

下面介紹用C語言配合Verilog HDL來設計算法的硬件電路塊時考慮的三個主要問題:

1.為什么選擇C語言與Verilog 配合使用

首先,C語言很靈活,查錯功能強,還可以通過PLI(編程語言接口)編寫自己的系統(tǒng)任務直接與硬件仿真器(如Verilog-XL)結合使用。C語言是目前世界上應用最為廣泛的一種編程語言,因而C程序的設計環(huán)境比Verilog HDL更完整。此外,C語言可應用于許多領域,有可靠的編譯環(huán)境,語法完備,缺陷較少。

比較起來,Verilog 語言只是針對硬件描述的,在別處使用(如用于算法表達等)并不方便。而且Verilog的仿真、綜合、查錯工具等大部分軟件都是商業(yè)軟件,與C語言相比缺乏長期大量的使用,可靠性較差,亦有很多缺陷。所以,只有在C語言的配合使用下,Verilog才能更好地發(fā)揮作用。

面對上述問題,最好的方法是C語言與Verilog語言相輔相成,互相配合使用。這就是既要利用C語言的完整性,又要結合Verilog對硬件描述的精確性,來更快、更好地設計出符合性能要求的硬件電路系統(tǒng)。

利用C語言完善的查錯和編譯環(huán)境,設計者可以先設計出一個功能正確的設計單元,以此作為設計比較的標準。然后,把C程序一段一段地改寫成用并型結構(類似于Verilog)描述的C程序,此時還是在C的環(huán)境里,使用的依然是C語言。

如果運行結果都正確,就將C語言關鍵字用Verilog相應的關鍵字替換,進入Verilog的環(huán)境。將測試輸入同時加到C與Verilog兩個單元,將其輸出做比較。這樣很容易發(fā)現(xiàn)問題的所在,更正后再做測試,直至正確無誤。

2.C語言與Verilog語言互相轉換中存在的問題

混合語言設計流程往往會在兩種語言的轉換中會遇到許多難題,如下所示。

怎樣把C程序轉換成類似Verilog結構的C程序。

如何增加并行度,以保證用硬件實現(xiàn)時運行速度達到設計要求。

怎樣不使用C中較抽象的語法(例如迭代、指針、不確定次數(shù)的循環(huán)等)。也能來表示算法(因為轉換的目的是用可綜合的Verilog語句來代替C程序中的語句,而可用于綜合的Verilog語法是相當有限的,往往找不到相應的關鍵字來替換)。

C程序是按行依次執(zhí)行的,屬于順序結構。而Verilog描述的硬件是可以在同一時間同時運行的,屬于并行結構。這兩者之間有很大的沖突。另外,Verilog的仿真軟件也是順序執(zhí)行的,在時間關系上同實際的硬件是有差異的,可能會出現(xiàn)一些無法發(fā)現(xiàn)的問題。

C語言的函數(shù)調用與Verilog中模塊的調用也有區(qū)別。C程序調用函數(shù)是沒有延時特性的,一個函數(shù)是惟一確定的,對同一個函數(shù)的不同調用是一樣的。而Verilog中對模塊的不同調用是不同的,即使調用的是同一個模塊,必須用不同的名字來指定。

Verilog的語法規(guī)則很死,限制很多,能用的判斷語句有限,仿真速度較慢,查錯功能差,錯誤信息不完整。仿真軟件通常也很昂貴,而且不一定可靠。C語言的花樣則很多,轉換過程中會遇到一些困難。

C語言沒有時間關系,轉換后的Verilog程序必須要能做到?jīng)]有任何外加的人工延時信號,否則將無法使用綜合工具把Verilog源代碼轉化為門級邏輯。

3.如何利用C語言來加快硬件的設計和查錯

如表1所示為常用的C語言與Verilog相對應的關鍵字與控制結構。

 

表1                                 C語言與Verilog相對應的關鍵字與控制結構表

C

Verilog

sub-function

module、function、task

if-then-else

if-then-else

case

case

{,}

begin、end

for

for

while

while

break

disable

define

define

int

int

printf

monitor、display、strobe

 

 

如表2所示為C語言與Verilog相對應的運算符。

表2                                               C語言與Verilog對應運算符表

C

Verilog

功    能

*

*

/

/

+

+

-

-

%

%

取模

!

!

反邏輯

&&

&&

邏輯與

||

||

邏輯或

大于

小于

 

續(xù)表

C

Verilog

功    能

>=

>=

大于等于

<=

<=

小于等于

==

==

等于

!=

!=

不等于

位反相

&

&

按位邏輯與

|

|

按位邏輯或

^

^

按位邏輯異或

~^

~^

按位邏輯同或

>> 

>> 

右移

<< 

<< 

左移

?:

?:

相當于if-else

 

從上面的講解我們可以總結如下。

  • C語言與Verilog硬件描述語言可以配合使用,輔助設計硬件。
  • C語言與Verilog硬件描述語言很像,但要稍加限制。
  • C語言的程序很容易轉成Verilog的程序。

 

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

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

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

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

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

關鍵字: 汽車 人工智能 智能驅動 BSP

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

關鍵字: 亞馬遜 解密 控制平面 BSP

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

關鍵字: 騰訊 編碼器 CPU

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

關鍵字: 華為 12nm EDA 半導體

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

關鍵字: 華為 12nm 手機 衛(wèi)星通信

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

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

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

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

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

關鍵字: BSP 信息技術
關閉
關閉