最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

HDLBits (137) — 有奇偶校驗(yàn)位的串口接收器

2022-05-17 02:28 作者:僚機(jī)Wingplane  | 我要投稿

本題鏈接:

https://hdlbits.01xz.net/wiki/fsm_serialdp

另請(qǐng)參閱:Serial receiver and datapath

我們想為串行接收器添加奇偶校驗(yàn)。 奇偶校驗(yàn)要在每個(gè)數(shù)據(jù)字節(jié)后增加一位。 這里我們將使用奇校驗(yàn),其中接收到的 9 位中的 1 的數(shù)量必須是奇數(shù)。 例如,101001011 滿足奇校驗(yàn)(有 5 個(gè) 1),但 001001011 不滿足。

更改你的有限狀態(tài)機(jī)和數(shù)據(jù)路徑以執(zhí)行奇校驗(yàn)檢查。 只有當(dāng)一個(gè)字節(jié)被正確接收并且它的奇偶校驗(yàn)通過時(shí),才斷言完成信號(hào)。 與?serial receiver FSM?一樣,此有限狀態(tài)機(jī)需要識(shí)別起始位,等待所有 9 個(gè)(數(shù)據(jù)和奇偶校驗(yàn))位,然后驗(yàn)證停止位是否正確。 如果停止位未按預(yù)期出現(xiàn),則有限狀態(tài)機(jī)必須等到找到停止位后再嘗試接收下一個(gè)字節(jié)。

這里為你提供了以下模塊,可用于計(jì)算輸入流的奇偶校驗(yàn)(這是一個(gè)帶復(fù)位功能的 T觸發(fā)器)。 預(yù)設(shè)用途是應(yīng)該給它輸入比特流,并在適當(dāng)?shù)臅r(shí)間重置,以便計(jì)算每個(gè)字節(jié)中 1 的比特?cái)?shù)。

請(qǐng)注意,串行協(xié)議先發(fā)送最低有效位,然后再發(fā)送 8 個(gè)數(shù)據(jù)位之后的奇偶校驗(yàn)位。

一些時(shí)序圖

無(wú)錯(cuò)誤。 第一個(gè)字節(jié)奇校驗(yàn)通過,第二個(gè)字節(jié)失敗

題目

答案

有限狀態(tài)機(jī)(Finite-State Machine,F(xiàn)SM),簡(jiǎn)稱狀態(tài)機(jī),是表示有限個(gè)狀態(tài)以及在這些狀態(tài)之間的轉(zhuǎn)移和動(dòng)作等行為的數(shù)學(xué)模型。狀態(tài)機(jī)不僅是一種電路的描述工具,而且也是一種思想方法,在電路設(shè)計(jì)的系統(tǒng)級(jí)和 RTL 級(jí)有著廣泛的應(yīng)用。

Verilog 中狀態(tài)機(jī)主要用于同步時(shí)序邏輯的設(shè)計(jì),能夠在有限個(gè)狀態(tài)之間按一定要求和規(guī)律切換時(shí)序電路的狀態(tài)。狀態(tài)的切換方向不但取決于各個(gè)輸入值,還取決于當(dāng)前所在狀態(tài)。狀態(tài)機(jī)可分為 2 類:Moore?狀態(tài)機(jī)和 Mealy 狀態(tài)機(jī)。

在遠(yuǎn)程通信和計(jì)算機(jī)科學(xué)中,串行通信(英語(yǔ):Serial communication)是指在計(jì)算機(jī)總線或其他數(shù)據(jù)通道上,每次傳輸一個(gè)比特?cái)?shù)據(jù),并連續(xù)進(jìn)行以上單次過程的通信方式。與之對(duì)應(yīng)的是并行通信,它在串行端口上通過一次同時(shí)傳輸若干比特?cái)?shù)據(jù)的方式進(jìn)行通信。

每個(gè)字符表示為一個(gè)幀,以邏輯低電平為開始比特,然后是數(shù)據(jù)比特,可選的奇偶校驗(yàn)比特,最后是一個(gè)或多個(gè)停止比特(邏輯高電平)。

接收器在每個(gè)時(shí)鐘脈沖時(shí)測(cè)試接收到的信號(hào)狀態(tài)是否為開始比特。如果開始比特的低電平持續(xù)傳輸1個(gè)比特所需時(shí)間的一半以上,則認(rèn)為開始了一個(gè)數(shù)據(jù)幀的傳輸;否則,則認(rèn)為是毛刺脈沖并忽略。到了下一個(gè)比特時(shí)間后,線路狀態(tài)被采樣并送入移位寄存器。

簡(jiǎn)化的UART在開始比特下降沿開始重新同步時(shí)間,然后在每個(gè)數(shù)據(jù)比特的中心時(shí)刻采樣。

奇偶校驗(yàn)位用于許多計(jì)算機(jī)硬件中,遇到麻煩時(shí)能夠重新操作或者通過簡(jiǎn)單的錯(cuò)誤檢測(cè)就能起到很大作用的場(chǎng)合。例如SCSI總線使用奇偶校驗(yàn)位檢測(cè)傳輸錯(cuò)誤,許多微處理器的指令高速緩存中也包括奇偶校驗(yàn)位保護(hù)。因?yàn)橹噶罹彺鏀?shù)據(jù)是主內(nèi)存數(shù)據(jù)的副本,所以在發(fā)現(xiàn)錯(cuò)誤的時(shí)候能夠拋棄錯(cuò)誤數(shù)據(jù)并且重新取回?cái)?shù)據(jù)。

在串行通信中,常用的格式是7個(gè)數(shù)據(jù)位、1個(gè)校驗(yàn)位、1到2個(gè)停止位。這種格式用方便的8位字節(jié)巧妙地適應(yīng)了所有的7位ASCII字符。也可以用其它的格式表示,8位數(shù)據(jù)加上1個(gè)校驗(yàn)位可以傳輸任意的8位字節(jié)數(shù)據(jù)。

在串行通信中,奇偶校驗(yàn)位通常是由UART這樣的接口硬件生成、校驗(yàn)的,在接收方,通過接口硬件中的寄存器的狀態(tài)位傳給CPU以及操作系統(tǒng)。錯(cuò)誤數(shù)據(jù)的恢復(fù)通常是通過重新發(fā)送數(shù)據(jù),這個(gè)過程通常由如操作系統(tǒng)輸入輸出程序這樣的軟件處理的。

參考內(nèi)容:

6.3 Verilog 狀態(tài)機(jī)?| 菜鳥教程:

https://www.runoob.com/w3cnote/verilog-fsm.html

通用異步收發(fā)傳輸器?| 維基百科:

https://zh.wikipedia.org/wiki/UART

串行通信?| 維基百科:

https://zh.wikipedia.org/wiki/串行通信

奇偶校驗(yàn)位?| 維基百科:

https://zh.wikipedia.org/wiki/奇偶校驗(yàn)位


HDLBits (137) — 有奇偶校驗(yàn)位的串口接收器的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
静宁县| 图们市| 磴口县| 凤山县| 镇雄县| 义乌市| 开远市| 苏州市| 历史| 东城区| 福安市| 万载县| 旅游| 绍兴市| 寿阳县| 射洪县| 会昌县| 吉水县| 承德县| 耒阳市| 大同市| 焦作市| 祁阳县| 祥云县| 平塘县| 藁城市| 清水县| 册亨县| 遵义县| 神木县| 太康县| 靖安县| 仁怀市| 叶城县| 巫山县| 页游| 洛川县| 托克托县| 海宁市| 新竹市| 高唐县|