《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于Verilog的順序狀態邏輯FSM的設計與仿真
基于Verilog的順序狀態邏輯FSM的設計與仿真
成 運1, 張波云2
摘要: 以順序狀態邏輯有限狀態機的設計為例,簡要介紹了用Verilog語言進行集成電路設計的一般過程,并在ModelSim和DC環境下成功地進行了仿真和綜合。
關鍵詞: SoPC Verilog HDL語言 FSM
Abstract:
Key words :

  摘  要: 以順序狀態邏輯有限狀態機的設計為例,簡要介紹了用Verilog語言進行集成電路設計的一般過程,并在ModelSim和DC環境下成功地進行了仿真和綜合。

  關鍵詞: Verilog   順序狀態邏輯   FSM

 

  硬件描述語言Verilog為數字系統設計人員提供了一種在廣泛抽象層次上描述數字系統的方式,同時,為計算機輔助設計工具在工程設計中的應用提供了方法。該語言支持早期的行為結構設計的概念,以及其后層次化結構設計的實現。這在設計過程中,進行邏輯結構部分設計時可以將行為結構和層次化結構混合起來;為確認正確性還可以將描述進行模擬,并提供一些用于自動設計的綜合工具。因而Verilog語言為設計者進行大型復雜數字系統的設計提供了途徑[1]。超大規模集成電路設計的典型流程如圖1所示[2]。

 

 

  本文將以順序狀態邏輯有限狀態機的設計為例介紹用Verilog語言設計數字電路的一般過程。

1 設計規范與設計構思

  電子設計工程師在設計過程中不可避免地會遇到設計可執行特殊操作序列電路的工作,如用來控制其他電路進行操作的控制器,而有限狀態機(Finite Status Machine,FSM)是設計這種能執行特殊操作序列電路的一種非常有效的模型。FSM的結構通常由當前狀態寄存器、下一狀態邏輯和輸出邏輯三部分構成。FSM也有很多種模型,本文僅以順序狀態邏輯FSM的設計為例來說明用Verilog進行集成電路設計的一般設計過程。為簡單起見,本設計只設計了包含有8個狀態的順序狀態邏輯FSM。8個狀態分別為One、Two、ThreeA、ThreeB、ThreeC、Dummy、Four、Five。開始狀態為One,各狀態之間的轉換關系如圖2所示[3]。

 

 

  該順序狀態邏輯FSM的功能及要求如下。

  (1)同步復位信號Reset至少要維持4個時鐘周期的高電平信號,以保證狀態機進入狀態One。

  (2)當狀態機在5個狀態中循環時,A、B、C 3個輸入按優先級使狀態機從狀態Two進入相應的狀態ThreeA、ThreeB、ThreeC、Dummy。

  (3)復位后,如果A持續為高電平,則輸出信號Y1的周期為時鐘周期的5倍,且高電平維持的時間為1個時鐘周期。

  (4)如果A、B維持為低電平,而C維持為高電平,則輸出信號Y3的周期為時鐘周期的5倍,且高電平維持的時間為1個時鐘周期。

  (5)如果A維持低電平,而B維持高電平,則輸出信號Y2與Y1和Y3不同,只維持1個時鐘周期的高電平。因為當狀態機進入狀態ThreeB時,信號BeenInState3B被設置為1,而該信號就會禁止狀態機再次進入狀態ThreeB,直到另一個復位信號出現為止。

  以上是一個時序電路的設計,如何保證正確的時序是設計的關鍵。根據設計要求,該狀態機至少應該有8個端口:5個輸入端口(A、B、C、Reset、Clock),3個輸出端口(Y1、Y2、Y3)。其中輸入端A、B、C和Reset信號均由時鐘邊緣進行觸發,Reset具有最高的優先權,而輸入信號A、B、C的優先權則依次遞減。

該順序狀態邏輯有限狀態機的端口示意圖和設計構思圖分別如圖3和圖4所示。

 

2 用Verilog語言編寫源代碼

  基于上面的分析,可以寫出如下設計代碼:

3 源代碼功能仿真

  通常EDA(Electronic Design Automation)工具都為設計人員提供了測試平臺,以驗證數字電子系統設計在功能和時序二方面的正確性。不同的EDA工具提供的平臺會有差別,但是它們都可以實現對被測試對象加載測試信號,并且能夠通過波形輸出或文件記錄輸出等方式來方便地進行觀察及比較仿真結果。而測試用的激勵代碼通常是由設計人員自己編寫。為了便于清楚地觀察、比較仿真結果,本設計對一個340ns時間段進行了模擬,且測試代碼考慮了各種可能出現的激勵情況,具體的測試代碼如下:

  筆者使用Model公司的ModelSim5.6對該系統進行了功能仿真,結果如圖5所示。

 

4  邏輯綜合

  邏輯綜合的目標是將寄存器時間邏輯(RTL)的HDL(Hardware Description Language)代碼映射到具體的工藝上加以實現,因而從這一步開始,設計過程與實現工藝相關聯。實現自動綜合的前提是要有邏輯綜合庫的支持。綜合庫內部包含了相應的工藝參數,最典型的有:門級延時、單元面積、扇入扇出系數等。設計一個電子系統,總有相應的設計目標,如時鐘頻率、芯片面積、端口驅動能力等。自動綜合工具將這些設計指標作為綜合過程的約束條件,在給定的包含工藝參數的綜合庫中選取最佳單元,實現綜合過程。

  與模擬工具一樣,目前有許多優秀的綜合工具借助現有的綜合庫能將Verilog語言源代碼進行綜合,轉化成門級電路圖,并且可以根據設計者施加的約束條件對電路進行優化,生成相應的門級網表。Synopsys公司的DC(DesignCompiler)就是一個比較好的邏輯綜合工具。DC邏輯綜合與優化后得到的電路圖如圖6所示。

 

5  門級仿真

  綜合之后所得到的電路是否仍能滿足設計要求,同樣需要通過仿真來確定,邏輯綜合之后的仿真稱為門級仿真。門級網表是使用門電路以及電路之間的連接來描述電路的方式。門級仿真與RTL仿真不同的是,門級仿真包含了門單元的延時信息,因而門級仿真需要相應工藝的仿真庫支持。把綜合后得到的網表中門級延時參數提取出來后,對被測試對象進行反標,然后再進行仿真,得到的結果如圖7所示。

 

  從門級仿真所得到的波形圖輸出結果來看,本設計在功能與時序上是符合設計要求的。

6  后端設計

  門級仿真通過后,接著就是進行版圖規劃;版圖規劃好以后就進行布局與布線;在版圖的布局布線都已確定后,可以從版圖中進一步提取出連線電阻、電容等參數。

生成版圖之后,把從版圖中提取出的參數反標到門級網表中,進行包含門延時、連線延時的門級仿真,稱作后仿真。這一步主要是進行時序模擬,如果時序不能滿足設計要求,通常需要修改版圖的布局與布線、邏輯綜合的約束條件,有時也可能回到RTL描述、行為級描述甚至設計規范或算法實現上加以調整。版圖得到驗證后就可以交付生產廠家做到硅片上。

7 結束語

  由以上的設計過程可以看出,Verilog語言的最大特點是簡潔、靈活、高效,其編程風格和C語言極其相似,所以很容易學習和掌握。同時,Verilog語言還具有底層描述方面的優勢,而且其設計方法與具體工藝無關,這就使得用Verilog語言編寫的功能模塊具有很高的可重用性。隨著集成電路的深亞微米制造技術、設計技術的迅速發展,集成電路已進入片上系統(System on a Chip,SoC)設計時代。SoC設計的最大挑戰之一是IP(Intellectual Property)模塊的有效使用和重用。IP模塊的重用,除能縮短SoC芯片設計的時間外,還能降低設計和制造成本,提高可靠性。在SoC設計中,可重用的IP模塊越多,設計過程的效率就會越高。由此可見,Verilog語言在SoC設計中可以發揮更大的作用。因此,能用Verilog語言進行電路設計是每個電子設計工程師必須掌握的基本技術。

參考文獻

1 Thomas D E,Mooby P R著.劉明業等譯.硬件描述語言Verilog(第4版).北京:清華大學出版社,2001

2 張亮.數字電路設計與Verilog HDL.北京:人民郵電出版社,2000

3 Smith D J.HDL CHIP DESIGN:A Practical guide for Designing,Synthesizing and Simujlating ASICs and FPGAs using VHDL or Verilog.USA:Doone Publications,Madison,AL,1996

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久热精品视频| 欧美人在线观看| 一区二区三区精品在线| 久久精品亚洲热| 性欧美xxxx视频在线观看| 一区二区久久| 99热在这里有精品免费| 亚洲精品久久久久久久久久久| 亚洲电影天堂av| 亚洲国产你懂的| 亚洲片国产一区一级在线观看| 亚洲国产三级网| 亚洲精品视频在线观看免费| 亚洲欧洲在线视频| 日韩视频精品在线观看| 亚洲免费成人av电影| 亚洲剧情一区二区| 这里只有精品在线播放| 亚洲一区二区日本| 午夜精品久久一牛影视| 欧美一区日韩一区| 亚洲电影免费观看高清完整版在线观看| 久久aⅴ乱码一区二区三区| 久久se精品一区二区| 久久精品视频在线看| 亚洲国产高清在线观看视频| 亚洲国产一区二区在线| 亚洲国产精品成人| 亚洲美女精品久久| av不卡免费看| 亚洲性人人天天夜夜摸| 中日韩美女免费视频网址在线观看 | 亚洲电影毛片| 伊人久久噜噜噜躁狠狠躁| 国产一区在线观看视频| 国产日韩亚洲欧美| 国产亚洲精品久久久久久| 国产日韩亚洲| 国产偷国产偷亚洲高清97cao | 国产一区深夜福利| 国产午夜亚洲精品不卡| 国产欧美日韩免费| 国产日韩欧美中文| 国内精品久久久| 精品动漫一区二区| 亚洲电影免费在线| 亚洲精品看片| 最新高清无码专区| 亚洲伊人观看| 欧美一区二区成人| 亚洲电影免费在线观看| 最新成人av网站| 日韩视频久久| 亚洲图片欧洲图片av| 亚洲一区二区三区四区视频| 亚洲欧美日韩国产精品| 欧美中文在线免费| 久久一本综合频道| 欧美精品aa| 国产精品久久久久久久久久尿| 国产精品亚洲一区二区三区在线| 国产欧美日韩视频一区二区| 国产亚洲综合性久久久影院| 影音先锋中文字幕一区二区| 亚洲国产婷婷香蕉久久久久久99| 亚洲裸体俱乐部裸体舞表演av| av成人毛片| 国模精品一区二区三区| 精品不卡在线| 亚洲欧洲日产国产网站| 一本不卡影院| 欧美一乱一性一交一视频| 亚洲精品视频二区| 亚洲影院一区| 久久久久一区二区| 欧美激情二区三区| 国产精品欧美日韩一区| 韩国欧美一区| 亚洲精品久久久久久一区二区| 一本大道久久a久久精品综合| 亚洲欧美影音先锋| 亚洲精品国产品国语在线app| 中文日韩在线| 欧美一区二区三区久久精品茉莉花| 久久久久一本一区二区青青蜜月| 欧美成人精品影院| 国产精品午夜在线| 在线免费不卡视频| 亚洲图片欧洲图片av| 亚洲电影中文字幕| 国产精品99久久久久久久女警| 久久精品国亚洲| 亚洲欧美综合另类中字| 欧美成人资源网| 国产精品羞羞答答xxdd| 亚洲国产成人不卡| 亚洲在线观看视频网站| 亚洲精品久久久久久久久久久久久 | 最近中文字幕mv在线一区二区三区四区| 亚洲午夜久久久| 久久综合狠狠综合久久综合88| 欧美午夜a级限制福利片| 精品91免费| 亚洲夜晚福利在线观看| 亚洲人成绝费网站色www| 亚洲在线观看视频网站| 欧美成人免费大片| 国产一区二区高清不卡| 亚洲国产欧美不卡在线观看 | 小黄鸭精品aⅴ导航网站入口| 日韩性生活视频| 久久久久久91香蕉国产| 欧美性感一类影片在线播放 | 亚洲第一区在线| 亚洲欧美怡红院| 欧美在线视频免费| 欧美午夜精品久久久久久超碰| 1000部国产精品成人观看| 亚洲欧美在线视频观看| 亚洲午夜国产一区99re久久| 噜噜噜躁狠狠躁狠狠精品视频 | 亚洲人午夜精品免费| 亚洲第一毛片| 久久精品成人一区二区三区| 国产精品av久久久久久麻豆网| 亚洲国产综合视频在线观看| 欧美一区观看| 欧美一区二区在线播放| 欧美视频一区二区三区…| 亚洲国产精品va在线看黑人动漫| 欧美在线网址| 久久国内精品视频| 国产精品无人区| 夜夜爽av福利精品导航 | 亚洲激情成人网| 久久综合色天天久久综合图片| 国产麻豆视频精品| 亚洲一品av免费观看| 亚洲一区二区三区在线观看视频| 欧美激情视频网站| 亚洲激情婷婷| 亚洲精品一区二区三区不| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲精品美女免费| 日韩午夜在线播放| 美国成人直播| 狠狠v欧美v日韩v亚洲ⅴ| 午夜一级在线看亚洲| 午夜精品久久久久久久久久久久 | 亚洲午夜av| 欧美精品一区二区在线播放| 日韩视频中午一区| 99精品久久免费看蜜臀剧情介绍| 欧美成人三级在线| 91久久极品少妇xxxxⅹ软件| 日韩午夜高潮| 欧美日韩四区| 一区二区欧美视频| 亚洲免费一区二区| 国产欧美日韩高清| 欧美综合二区| 免费不卡在线观看| 亚洲日本成人| 亚洲一区二区精品| 国产精品区免费视频| 亚洲欧美成人一区二区在线电影 | 国产一二三精品| 亚洲黄色性网站| 欧美精品国产一区| 在线亚洲激情| 亚洲——在线| 国产日韩欧美一区在线 | 久久av一区| 国语自产精品视频在线看一大j8| 久久激情综合网| 欧美国产亚洲另类动漫| 99re66热这里只有精品3直播| 亚洲欧美日韩精品在线| 国产日韩欧美视频| 亚洲国产精品久久久久婷婷老年 | 午夜欧美大片免费观看| 国产亚洲欧美日韩美女| 亚洲精品日韩综合观看成人91| 欧美激情一区二区三区在线视频| 日韩一级精品视频在线观看| 亚洲男人的天堂在线| 国内精品视频666| 日韩视频免费在线| 国产精品女人网站| 亚洲丰满在线| 欧美视频在线看| 欧美一区二视频| 欧美日韩www| 欧美亚洲自偷自偷| 欧美连裤袜在线视频| 亚洲综合欧美日韩| 免费成人av| 亚洲在线免费视频| 看欧美日韩国产| 99精品久久|