亚洲av成人精品日韩一区,97久久久精品综合88久久,玩弄japan白嫩少妇hd,亚洲av片不卡无码久久,玩弄人妻少妇500系列

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

latch和寄存器有什么區(qū)別 鎖存器的危害分析

西西 ? 來(lái)源:博客園 ? 作者:lianjiehere ? 2020-10-05 14:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一直都知道fpga中有l(wèi)atch這么一回事,但是一直都不太清楚到底什么是鎖存器,它是怎么產(chǎn)生的,它到底和寄存器有多少區(qū)別,它怎么消除。為什么說(shuō)他不好?

一,是什么

鎖存器是一種在異步時(shí)序電路系統(tǒng)中,對(duì)輸入信號(hào)電平敏感的單元,用來(lái)存儲(chǔ)信息。一個(gè)鎖存器可以存儲(chǔ)1bit的信息,通常,鎖存器會(huì)多個(gè)一起出現(xiàn),如4位鎖存器,8位鎖存器。

鎖存器在數(shù)據(jù)未鎖存時(shí),輸出端的信號(hào)隨輸入信號(hào)變化,就像信號(hào)通過(guò)一個(gè)緩沖器,一旦鎖存信號(hào)有效,則數(shù)據(jù)被鎖存,輸入信號(hào)不起作用。因此,鎖存器也被稱(chēng)為透明鎖存器,指的是不鎖存時(shí)輸出對(duì)于輸入是透明的。

二 鎖存器與寄存器的區(qū)別:

兩者都是基本存儲(chǔ)單元,單鎖存器是電平觸發(fā)的存儲(chǔ)器,觸發(fā)器是邊沿觸發(fā)的存儲(chǔ)器。本質(zhì)是,兩者的基本功能是一樣的,都可以存儲(chǔ)數(shù)據(jù)。意思是說(shuō)一個(gè)是組合邏輯的,一個(gè)是在時(shí)序電路中用的,時(shí)鐘出發(fā)的。

三,鎖存器的危害:

對(duì)毛刺敏感,不能異步復(fù)位,所以上電以后處于不確定的狀態(tài);

Latch會(huì)使靜態(tài)時(shí)序分析變得非常復(fù)雜;

在PLD芯片中,基本的單元是由查找表和觸發(fā)器組成的,若生成鎖存器反而需要更多的資源。

第三條也是最基本的原因。

四,產(chǎn)生的原因 ********ps重重之重

上面說(shuō)了那沒(méi)多只是覺(jué)得網(wǎng)上的沒(méi)把鎖存器說(shuō)明白。下面的才是重點(diǎn)。

1,case

2,if-------else if

3,always@(敏感信號(hào)表)

五 解決

1.case——————加default:

關(guān)于defalut的情況:一是可以 default:data=1‘bx;這個(gè)x表示未知,在綜合時(shí)可以避免產(chǎn)生鎖存器。在仿真時(shí)是紅線(xiàn)表示。

二是 default:data=0;這樣產(chǎn)生一個(gè)默認(rèn)的情況。

2.if-----------------------一定要有else語(yǔ)句。

3.always---------如是說(shuō)道:在賦值表達(dá)式右邊參與賦值的信號(hào)都必須在always@(敏感電平列表)中列出。

如果在賦值表達(dá)式右端引用了敏感電平列表中沒(méi)有列出的信號(hào),那么在綜合時(shí),將會(huì)為該沒(méi)有列出的信號(hào)隱含地產(chǎn)生一個(gè)透明鎖存器。

4. 付初值。好用的

,我們討論一下到底鎖存器是不是就是沒(méi)用的

1. Latch的本質(zhì)

Latch作為一種電路單元,必然有其存在的理由及應(yīng)用場(chǎng)景,在實(shí)際應(yīng)用中,有些設(shè)計(jì)不可避免的要使用Latch,特別是總線(xiàn)應(yīng)用上,例如,地址鎖存器,數(shù)據(jù)鎖存器,復(fù)位信號(hào)鎖存器等。但是在更多的情況下,很容易產(chǎn)生未預(yù)料到的鎖存器,使邏輯功能不滿(mǎn)足要求,浪費(fèi)大量時(shí)間。比較好的應(yīng)用規(guī)則是:要學(xué)會(huì)分析是否需要Latch以及代碼是否會(huì)產(chǎn)生意外的Latch。

通過(guò)Verilog HDL實(shí)現(xiàn)序列最大值搜索程序,并保持檢測(cè)到的最大值

  • [plain] view plaincopymodule two_max(
  • a,rst_n,abmax
  • );
  • input [7:0] a;
  • input rst_n;
  • output [7:0] abmax;
  • reg [7:0] abmax_tmp;
  • always @ (a or rst_n) begin
  • if (!rst_n)
  • abmax_tmp = 8‘h00;
  • else
  • if (a》abmax_tmp)
  • abmax_tmp = a;
  • end
  • endmodule

上述代碼在ISE中的綜合結(jié)果會(huì)給出設(shè)計(jì)中包含Latch的警告。但實(shí)際上,abmax_tmp鎖存器正是我們需要的,所以,雖然有警告,但是代碼設(shè)計(jì)是沒(méi)有問(wèn)題的。將上述代碼的if語(yǔ)句補(bǔ)全:

  • [plain] view plaincopyif (a 》 abmax_tmp)
  • abmax_tmp = a;
  • else
  • abmax_tmp = abmax_tmp;

經(jīng)過(guò)綜合后,仍然有Latch的警告。無(wú)論Latch是否是用戶(hù)需要的,ISE都會(huì)給出警告,主要原因就是Latch對(duì)整個(gè)設(shè)計(jì)的時(shí)序性能影響較大。所以,在設(shè)計(jì)中要盡量避免Latch,但是確實(shí)需要使用的情況,也可以使用。

2. “不期望”latch

指的是與設(shè)計(jì)意圖不符,產(chǎn)生的Latch。主要問(wèn)題在于設(shè)計(jì)人員沒(méi)有合理使用Verilog HDL語(yǔ)言,常見(jiàn)的原因是對(duì)條件語(yǔ)句(if、casse)的分支描述不完整。典型例子:用Verilog HDL實(shí)現(xiàn)一個(gè)鎖存器,當(dāng)輸入數(shù)據(jù)大于127時(shí),將輸入數(shù)據(jù)輸出,否則輸出0

  • [plain] view plaincopymodule latch_demo(
  • din,dout
  • );
  • input [7:0] din;
  • output [7:0] dout;
  • reg [7:0] dout;
  • always @ (din) begin
  • if (din》127)
  • dout 《= din;
  • end
  • endmodule

綜合后的結(jié)果,在比較器后面級(jí)聯(lián)了鎖存器,這是因?yàn)閕f語(yǔ)句缺少else分支造成的。查看仿真結(jié)果,當(dāng)輸入小于127時(shí),輸出保持了上次的127,不是0,沒(méi)有達(dá)到設(shè)計(jì)要求。修改方法很簡(jiǎn)單,就是講if-else補(bǔ)全。

  • [plain] view plaincopyif (din 》 127 )
  • dout = din;
  • else
  • dout = 0;

在ISE中綜合后的結(jié)果中,可以看到補(bǔ)全if-else后,在比較器后面級(jí)聯(lián)了與門(mén),代替原來(lái)的鎖存器,仿真結(jié)果也正確。

至此,可以得到一個(gè)結(jié)論:Latch作為一種基本電路單元,會(huì)影響到電路的時(shí)序性能,應(yīng)該盡量避免使用,但出現(xiàn)Latch造成設(shè)計(jì)與意圖不符的情況,是由于設(shè)計(jì)人員代碼不正確造成的。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5434

    瀏覽量

    124513
  • 鎖存器
    +關(guān)注

    關(guān)注

    8

    文章

    926

    瀏覽量

    42395
  • 異步時(shí)序
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    8695
  • Latch
    +關(guān)注

    關(guān)注

    1

    文章

    48

    瀏覽量

    16421
  • 單鎖存器
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    1660
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    FPGA的設(shè)計(jì)中為什么避免使用

    文章都對(duì)個(gè)誤解,我們后面會(huì)詳細(xì)說(shuō)明。 這篇文章,我們包含如下內(nèi)容: ①
    的頭像 發(fā)表于 11-16 11:42 ?8937次閱讀
    FPGA的設(shè)計(jì)中為什么避免使用<b class='flag-5'>鎖</b><b class='flag-5'>存</b><b class='flag-5'>器</b>

    、觸發(fā)、寄存器和緩沖區(qū)別

    位二進(jìn)制數(shù),所以由N個(gè)或觸發(fā)可以構(gòu)成N位寄存器。工程中的寄存器一般按計(jì)算機(jī)中字節(jié)的位數(shù)設(shè)
    發(fā)表于 10-09 16:19

    寄存器、和觸發(fā)區(qū)別

    寄存器:registerlatch觸發(fā):flipflop 一、
    發(fā)表于 07-03 11:50

    觸發(fā)寄存器三者的區(qū)別

    的角度來(lái)年,寄存器的功能是相同的,它們的區(qū)別在于寄存器是同步時(shí)鐘控制,而
    發(fā)表于 09-11 08:14

    Verilog基本功--flipflop和latch以及register的區(qū)別

    觸發(fā):flipfloplatch寄存器:register
    發(fā)表于 08-27 08:30

    寄存器的作用哪些?

    寄存器的作用哪些? 寄存器用途  1.可將寄存器內(nèi)的數(shù)據(jù)執(zhí)行算術(shù)及邏輯運(yùn)算;  2.寄存器
    發(fā)表于 03-08 14:35 ?1.6w次閱讀

    累加寄存器嗎_寄存器、累加、暫存什么區(qū)別

    本文首先對(duì)寄存器、累加、暫存做個(gè)哥介紹,其次解答了累加是不是寄存器,最后闡述了寄存器、累加
    發(fā)表于 04-11 16:31 ?9896次閱讀

    Latch和觸發(fā)Flip-flop區(qū)別

    本文首先介紹了Latch結(jié)構(gòu)和
    的頭像 發(fā)表于 04-18 14:10 ?13.3w次閱讀
    <b class='flag-5'>鎖</b><b class='flag-5'>存</b><b class='flag-5'>器</b><b class='flag-5'>Latch</b>和觸發(fā)<b class='flag-5'>器</b>Flip-flop<b class='flag-5'>有</b>何<b class='flag-5'>區(qū)別</b>

    寄存器哪些區(qū)別

    首先應(yīng)該明確和觸發(fā)也是由與非門(mén)之類(lèi)的東西構(gòu)成。尤其是
    的頭像 發(fā)表于 08-12 10:26 ?5259次閱讀

    如何使用的Time Borrowing技術(shù)來(lái)替代關(guān)鍵路徑中的寄存器

    在ASIC中用到的地方很多,Time Borrowing是使用的典型應(yīng)用之一,在深度
    的頭像 發(fā)表于 06-14 16:56 ?2255次閱讀

    、觸發(fā)、寄存器的關(guān)聯(lián)與區(qū)別及其相應(yīng)的verilog描述

    1:、觸發(fā)寄存器的關(guān)聯(lián)與區(qū)別 首先應(yīng)該明確
    的頭像 發(fā)表于 12-19 12:25 ?1.4w次閱讀

    Verilog中 /觸發(fā)/寄存器區(qū)別

    latch):是電平觸發(fā)的存儲(chǔ)單元,數(shù)據(jù)存儲(chǔ)的動(dòng)作(狀態(tài)轉(zhuǎn)換)取決于輸入時(shí)鐘(或者使能)信號(hào)的電平值,盡當(dāng)
    發(fā)表于 01-31 14:57 ?2213次閱讀

    什么是寄存器區(qū)別

    Latch)是一種基本的數(shù)字電路元件,用于存儲(chǔ)二進(jìn)制數(shù)字的狀態(tài)信息,并能夠在需要時(shí)通過(guò)加電或控制信號(hào)的作用保持狀態(tài)。它通常由幾個(gè)邏輯門(mén)組成,可以實(shí)現(xiàn)簡(jiǎn)單的存儲(chǔ)、移位、計(jì)數(shù)等功能
    的頭像 發(fā)表于 04-09 18:45 ?1.1w次閱讀

    帶輸入的8位移位寄存器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《帶輸入的8位移位寄存器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 05-13 11:15 ?0次下載
    帶輸入<b class='flag-5'>鎖</b><b class='flag-5'>存</b><b class='flag-5'>器</b>的8位移位<b class='flag-5'>寄存器</b>數(shù)據(jù)表

    、觸發(fā)寄存器區(qū)別

    在數(shù)字電路和計(jì)算機(jī)系統(tǒng)中,、觸發(fā)寄存器都是關(guān)鍵的存儲(chǔ)元件,它們?cè)诠δ堋⒔Y(jié)構(gòu)和使用場(chǎng)景上存在一定的差異。本文將對(duì)這三者進(jìn)行詳細(xì)的介紹
    的頭像 發(fā)表于 05-23 15:28 ?3493次閱讀