獨(dú)熱碼在狀態(tài)機(jī)里面使用比價(jià)廣泛,這一塊有些人愛(ài)用,有些人嫌煩,有時(shí)候可以用用格雷碼跳轉(zhuǎn),不過(guò)格雷碼只支持那種一步到底的,中間有分支就不好做了,所以后來(lái)還是回到了獨(dú)熱碼的正道上。
說(shuō)白了獨(dú)熱碼的使用,在對(duì)狀態(tài)判斷時(shí),會(huì)減少一級(jí)組合邏輯,關(guān)鍵路徑上少一步,乍看沒(méi)多少,用多了積累多了,還是一個(gè)很客觀的數(shù)據(jù)的。
然后三段式狀態(tài)機(jī),狀態(tài)跳轉(zhuǎn)時(shí)一定記得要加上default,避免latch的產(chǎn)生。為了防止有時(shí)候不記得,在寫(xiě)狀態(tài)機(jī)時(shí)不如上來(lái)就給其他情況先賦值。
調(diào)試技巧
FPGA設(shè)計(jì),需要以數(shù)據(jù)流來(lái)推動(dòng),因此統(tǒng)計(jì)數(shù)據(jù)流輸入和輸出的個(gè)數(shù),對(duì)于調(diào)試來(lái)說(shuō),是一個(gè)最方便也最直觀的方式。
這些計(jì)數(shù),設(shè)計(jì)者可以通過(guò)總線接口供外部處理器讀出。不需要占用大量邏輯資源去調(diào)用邏輯分析儀,就可以通過(guò)處理器的串口連接計(jì)算機(jī)打印出來(lái)。
調(diào)試過(guò)程中,如果發(fā)現(xiàn)某些模塊有輸入?yún)s沒(méi)輸出,或者是輸入個(gè)數(shù)與輸出個(gè)數(shù)不匹配,打印出所有計(jì)數(shù),就可以很快定位出問(wèn)題出現(xiàn)的位置。然后有的放矢,很快就可以找出該模塊的問(wèn)題所在。
通過(guò)FPGA內(nèi)部各模塊的關(guān)鍵計(jì)數(shù)分析,來(lái)定位分析問(wèn)題,在設(shè)計(jì)上沒(méi)有任何難度。不過(guò)需要外部CPU或者FPGA嵌入式CPU的配合使用。
-
FPGA
+關(guān)注
關(guān)注
1644文章
21993瀏覽量
615454 -
Default
+關(guān)注
關(guān)注
0文章
4瀏覽量
8199 -
Latch
+關(guān)注
關(guān)注
1文章
48瀏覽量
16382
原文標(biāo)題:與FPGA相關(guān)的獨(dú)熱碼
文章出處:【微信號(hào):ALIFPGA,微信公眾號(hào):FPGA極客空間】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
為什么相對(duì)于格雷碼來(lái)說(shuō),獨(dú)熱碼會(huì)使用更多的觸發(fā)器和更少的組合邏輯???
fpga Default Latch FPGA設(shè)計(jì)的獨(dú)熱碼的使用和調(diào)試技巧的詳細(xì)概述
基于單片機(jī)及FPGA的時(shí)碼終端系統(tǒng)
IIC調(diào)試的詳細(xì)中文資料概述

T12Ctrl調(diào)試固件控制程序的詳細(xì)資料概述

VFD-V變頻器功能碼詳細(xì)說(shuō)明詳細(xì)中文資料概述

SOPC和FPGA的介紹和基礎(chǔ)實(shí)驗(yàn)的詳細(xì)資料概述

Chroma8000自動(dòng)測(cè)試系統(tǒng)的介紹和ATE調(diào)試操作流程詳細(xì)概述

如何提升物聯(lián)網(wǎng)設(shè)備的可靠性?詳細(xì)調(diào)試方法資料概述

6SE70變頻器如何調(diào)試?及故障排除的方法詳細(xì)資料概述

數(shù)獨(dú)算法概述和數(shù)獨(dú)的計(jì)算機(jī)和并行求解

FPGA視頻教程之FPGA開(kāi)發(fā)流程的詳細(xì)資料概述

FPGA設(shè)計(jì)與調(diào)試教程說(shuō)明

基于FPGA的IRIGBDC碼解碼

評(píng)論