基于VHDL的MTM總線主模塊有限狀態(tài)機(jī)設(shè)計(jì)
1.2 MTM主模塊
主控制模塊設(shè)計(jì)如圖2所示。主控制模塊在MTM總線協(xié)議中處于主控地位,主要功能是將來(lái)自微處理器的數(shù)據(jù)按照IEEE1149.5標(biāo)準(zhǔn)定義的消息格式進(jìn)行打包送到指定的從控制模塊;同時(shí)將來(lái)自指定從控制模塊的消息包進(jìn)行解包,并且提取有用數(shù)據(jù)傳回微處理器,供微處理器分析和處理。本文引用地址:http://2s4d.com/article/160361.htm
主狀態(tài)機(jī)是主控制模塊的核心單元,它的作用是控制整個(gè)信息傳輸過(guò)程。
主狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換圖如圖3。當(dāng)主狀態(tài)機(jī)處于某個(gè)給定的狀態(tài)時(shí),MCTL和MMD信號(hào)的邏輯值在MCLK的上升沿產(chǎn)生;在每個(gè)MCLK信號(hào)周期,主狀態(tài)機(jī)根據(jù)控制信號(hào)的只發(fā)生狀態(tài)轉(zhuǎn)換;在主狀態(tài)機(jī)的17個(gè)傳送狀態(tài)下發(fā)送17位的數(shù)據(jù)包,其他狀態(tài)不發(fā)送數(shù)據(jù),同時(shí)接收MSD上的數(shù)據(jù);在每個(gè)數(shù)據(jù)包發(fā)送后,主狀態(tài)機(jī)至少保持在暫停狀態(tài)不少于4個(gè)MCLK周期,若當(dāng)前接收的MSD數(shù)據(jù)有效則使接收單元使能信號(hào)有效;當(dāng)主狀態(tài)機(jī)進(jìn)入結(jié)束狀態(tài)時(shí),當(dāng)前消息傳送結(jié)束。
2 基于VHDL的主模塊有限狀態(tài)機(jī)的的設(shè)計(jì)
VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口,同時(shí)支持層次化和模塊化設(shè)計(jì),并且可以進(jìn)行仿真和綜合。
數(shù)字電路分為組合邏輯電路和時(shí)序邏輯電路兩種。組合邏輯電路的輸出只與當(dāng)前輸入有關(guān),時(shí)序邏輯電路的輸出與當(dāng)前輸入和過(guò)去輸入都有關(guān)。狀態(tài)機(jī)是一種廣義的時(shí)序電路,一般包括用于狀態(tài)譯碼和產(chǎn)生輸出信號(hào)組合邏輯和存儲(chǔ)狀態(tài)的寄存器邏輯兩部分。
根據(jù)MTM總線主模塊的狀態(tài)轉(zhuǎn)換圖,其基于VHDL有限狀態(tài)機(jī)的代碼如下:
評(píng)論