欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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)不再提示

RTL電路的設(shè)計(jì)原則和方法

冬至子 ? 來(lái)源:梧桐芯語(yǔ) ? 作者:孫榮榮 ? 2023-07-13 16:17 ? 次閱讀

既然RTL是寄存器傳輸級(jí)電路,那么電路設(shè)計(jì)就一定是以寄存器的特性為基礎(chǔ)進(jìn)行設(shè)計(jì)。

一般來(lái)說(shuō),RTL電路設(shè)計(jì)我們建議3個(gè)主要的原則:

  1. 時(shí)序邏輯與組合邏輯分開(kāi)
  2. 數(shù)據(jù)路徑與控制路徑分開(kāi)
  3. 先畫(huà)電路,后寫(xiě)代碼

以上3個(gè)原則,我們一個(gè)一個(gè)來(lái)看。

時(shí)序邏輯與組合邏輯分開(kāi)

這里涉及到數(shù)字電路基礎(chǔ)知識(shí),不懂的小朋友還是先把數(shù)字電路設(shè)計(jì)原理學(xué)一下。我們一般把寄存器(DFF)以及鎖存器(LATCH)看做是時(shí)序邏輯,也就是數(shù)據(jù)輸出與時(shí)鐘變化保持有一定的關(guān)系。具體的原理,可以參考之前關(guān)于寄存器工作原理分析的部分。而組合邏輯,則輸出與時(shí)鐘沒(méi)有關(guān)系,僅僅因?yàn)檩斎?a target="_blank">信號(hào)的變化,會(huì)立即產(chǎn)生變化,如選擇器、與門(mén)、或門(mén)、非門(mén)等。

如下圖所示,就是一組完整電路的功能框圖模型:

圖片

其工作原理為:

(a) current state bits=↑(next state bits);

(b) next state bits=f1(inputs,current state bits);

(c) outputs=f2(inputs,current state bits);

這里面f1和f2就是分別算出next state bits以及outputs的組合電路功能??梢悦鞔_的電路,在這里就是時(shí)序邏輯電路,或者說(shuō)是寄存器。所以我們?cè)诿枋鲭娐返臅r(shí)候,先描述寄存器就好:

1.jpg

接下來(lái)我們看,組合邏輯電路怎么設(shè)計(jì)。

數(shù)據(jù)路徑與控制路徑分開(kāi)

假設(shè)我們想描述以下電路:

圖片

那么時(shí)序邏輯的輸入,也就是D端怎么獲得?在正常的思考情況下,我們一般這樣考慮問(wèn)題,是有邏輯的:

如果滿(mǎn)足XX條件(這里假設(shè)S0為0)那么D端來(lái)自于InA,否則如果滿(mǎn)足XX條件(這里假設(shè)S1為1)則賦值為1'b0,否則如果滿(mǎn)足XX條件(這里假設(shè)S2為1)則來(lái)源于InC跟InB的與邏輯,否則就保持不變。

這種數(shù)據(jù)來(lái)源的邏輯思考,利用選擇器實(shí)現(xiàn)成電路,就是數(shù)據(jù)路徑的設(shè)計(jì)思路。而利用VerilogHDL來(lái)描述電路,就只需要用assign以及?,:的組合,實(shí)現(xiàn)選擇器的功能即可。而Synthesis綜合工具,會(huì)根據(jù)最終的電路進(jìn)行優(yōu)化,實(shí)現(xiàn)最優(yōu)的組合邏輯結(jié)構(gòu)。對(duì)設(shè)計(jì)者來(lái)說(shuō),首先能做用選擇器來(lái)設(shè)計(jì)數(shù)據(jù)路徑就可以了。

1.jpg

而S0、S1跟S2是怎么來(lái)的?設(shè)計(jì)S0、S1跟S2就相當(dāng)于這個(gè)電路模型組合邏輯的控制邏輯設(shè)計(jì)。

當(dāng)然S0、S1、S2又可以看做一種數(shù)據(jù)路徑進(jìn)一步擴(kuò)展設(shè)計(jì),他們可能是組合邏輯直接賦值,也可能是時(shí)序邏輯寄存器的輸出。

先畫(huà)電路圖,后寫(xiě)代碼

由于前些年軟件與互聯(lián)網(wǎng)產(chǎn)業(yè)的蓬勃發(fā)展,越來(lái)越多的人都把軟件視為生產(chǎn)力第一工具,卻忽略了工程師的主觀能動(dòng)性。越來(lái)越多的年輕人投入到集成電路設(shè)計(jì)領(lǐng)域往往只是學(xué)習(xí)了VerilgHDL語(yǔ)言,就開(kāi)始編寫(xiě)電路。殊不知這樣的電路,往往會(huì)面臨大量不可預(yù)知的bug,以及調(diào)試人員茫然的眼神。

也許有同學(xué)說(shuō)了,現(xiàn)在有很多代碼風(fēng)格(coding style),寫(xiě)電路的時(shí)候按照標(biāo)準(zhǔn)的代碼風(fēng)格寫(xiě)就好。也許作為一個(gè)接近20年電路設(shè)計(jì)經(jīng)驗(yàn)的老工程師來(lái)說(shuō),心中的電路已經(jīng)非常清晰,按照coding style編寫(xiě)的電路還是比較好的,但仍然會(huì)因?yàn)殡娐分鸩綇?fù)雜,有些部分無(wú)法把握,會(huì)遇到疏漏。

在這里我還是呼吁各位同學(xué),先把電路設(shè)計(jì)功底做好,再考慮如何用描述語(yǔ)言描述出來(lái)。至少,這個(gè)才叫做電路吧。這樣做的好處主要有以下3點(diǎn):

邏輯清晰,便于表達(dá)及傳遞思路

電路直觀,便于Debug以及修改

信號(hào)定義明確,Coding只需照抄

RTL電路設(shè)計(jì)的方法

其實(shí)根據(jù)RTL電路設(shè)計(jì)的原則,我們認(rèn)為一個(gè)已知接口信號(hào)以及功能定義的模塊,可以從輸出開(kāi)始往輸入推著寫(xiě)。

比如說(shuō),我們要設(shè)計(jì)一個(gè)4bit計(jì)數(shù)器,其功能要求如下:

  • 從0到15循環(huán)計(jì)數(shù)
  • 加電平輸入信號(hào)P_M,P_M為1則往上加,P_M為0則往下減
  • 加脈沖輸入信號(hào)Clr,Clr脈沖(高有效)來(lái)到,則計(jì)數(shù)器輸出為0
  • 加脈沖輸入信號(hào)Load,電平輸入信號(hào)DIN[3:0],Load脈沖(高有效)來(lái)到則計(jì)數(shù)器輸出加載為DIN[3:0]的值
  • 增加一個(gè)電平輸入信號(hào)Hold,當(dāng)Hold為高電平時(shí),計(jì)數(shù)器保持當(dāng)前值,不做增減。

那么首先我們分析這個(gè)寄存器的輸入輸出。

輸出就是0~15的數(shù)值,需要4bit輸出信號(hào)cnt_num,而輸入除了時(shí)鐘復(fù)位(clk,rstn)外,有P_M,Clr,Load,DIN[3:0]以及Hold。因此我們先把輸入輸出整理出來(lái)。

1.jpg

接著我們從輸出設(shè)計(jì)開(kāi)始往回(輸入)推導(dǎo),先定義輸出需要的寄存器來(lái)存儲(chǔ)每個(gè)周期變化用的計(jì)數(shù)值,cnt_r,并描述出來(lái):

1.jpg

接著,根據(jù)功能定義,描述時(shí)序邏輯輸入端的數(shù)據(jù)路徑:

1.jpg

由于所有控制信號(hào)來(lái)源于輸入,這個(gè)電路可以不做控制路徑的設(shè)計(jì)。但有心的小伙伴應(yīng)該發(fā)現(xiàn)了,如果Hold為高,則想加載DIN是無(wú)法實(shí)現(xiàn)的。因此這樣設(shè)計(jì)的電路,其實(shí)是存在優(yōu)先級(jí)的。需要與模塊定義的朋友做深入交流,確保實(shí)際功能使用時(shí)不會(huì)出錯(cuò)。

同時(shí),我們看到這個(gè)電路里用到了1個(gè)加法器和一個(gè)減法器,如果想進(jìn)一步優(yōu)化電路面積,我們可以考慮加法器的復(fù)用:

圖片

這樣做電路應(yīng)該怎么改呢?留給大家去思考了。

復(fù)雜電路系統(tǒng)設(shè)計(jì)方法

現(xiàn)在又要有小伙伴說(shuō)了,我們的電路很復(fù)雜的,如果每個(gè)都畫(huà)出電路,那什么時(shí)候能投片。我的理解是,復(fù)雜電路都是簡(jiǎn)單電路的衍生,按照功能將系統(tǒng)進(jìn)行框架劃分,并定義出每個(gè)框架之間的接口信號(hào)及其時(shí)序要求,接著再通過(guò)畫(huà)電路的方法,設(shè)計(jì)框架里的電路。有些小的電路實(shí)際上是會(huì)被復(fù)用的。每個(gè)公司產(chǎn)品線(xiàn),大部分時(shí)間都會(huì)處于一個(gè)逐步演進(jìn)的過(guò)程,小電路設(shè)計(jì)多數(shù)是剛開(kāi)始,后續(xù)的工作量會(huì)逐步降低。

但如果公司從一開(kāi)始就不重視畫(huà)電路,只是電路描述做實(shí)現(xiàn),也許前幾款產(chǎn)品可以正常跑,過(guò)了一段時(shí)間,客戶(hù)可能突然發(fā)現(xiàn)有些地方要優(yōu)化,有些地方有bug,但之前設(shè)計(jì)人員可能已經(jīng)離職。電路描述不好,電路圖也沒(méi)有,這個(gè)時(shí)候負(fù)責(zé)優(yōu)化和解bug的小伙伴一定會(huì)郁悶的。

聲明:本文內(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

    文章

    5372

    瀏覽量

    121318
  • 加法器
    +關(guān)注

    關(guān)注

    6

    文章

    183

    瀏覽量

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

    關(guān)注

    8

    文章

    914

    瀏覽量

    41669
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    385

    瀏覽量

    59991
  • 時(shí)序邏輯電路
    +關(guān)注

    關(guān)注

    2

    文章

    94

    瀏覽量

    16602
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    集成電路的替換方法原則

    了解集成電路常見(jiàn)故障類(lèi)型。掌握集成電路替換的原則方法和注意事項(xiàng)??梢允咕S修或替換集成電路事半功倍
    發(fā)表于 04-01 10:07 ?4412次閱讀

    RTL8201N系列接口電路

    本帖最后由 azsxdcfv1871514 于 2013-1-6 14:56 編輯 RTL8201N系列接口電路,RTL8201C,RTL8201CL,
    發(fā)表于 04-12 15:36

    RTL8308+RTL4204交換機(jī)原理圖

    RTL8308+RTL4204交換機(jī)原理圖 RTL8308電路原理圖 RTL4204 原理圖
    發(fā)表于 10-18 16:35 ?508次下載

    RTL TTL探頭電路

    RTL TTL探頭電路
    發(fā)表于 12-24 14:39 ?1202次閱讀
    <b class='flag-5'>RTL</b> TTL探頭<b class='flag-5'>電路</b>圖

    RTL,RTL是什么意思

    RTL,RTL是什么意思 電阻晶體管邏輯電路 RTL電路-電
    發(fā)表于 03-08 11:19 ?1.4w次閱讀

    設(shè)計(jì)復(fù)用的RTL指導(dǎo)原則

    設(shè)計(jì)可復(fù)用的基本要求是RTL 代碼可移植。通常的軟件工程指導(dǎo)原則RTL 編碼時(shí)也適用。類(lèi)似軟件開(kāi)發(fā),基本的編碼指導(dǎo)原則要求RTL 代碼簡(jiǎn)單
    發(fā)表于 12-24 00:46 ?32次下載

    RTL8710模塊常用使用方法

    Realtek 物聯(lián)網(wǎng)(iot)領(lǐng)域SOC芯片rtl8710的使用方法
    發(fā)表于 05-25 10:01 ?0次下載

    RTL8111E和RTL8105E應(yīng)用參考電路pdf下載

    RTL8111E和RTL8105E應(yīng)用參考電路
    發(fā)表于 03-07 11:24 ?51次下載

    RTL8306SD和RTL8306SM應(yīng)用參考電路pdf

    RTL8306SD和RTL8306SM應(yīng)用參考電路
    發(fā)表于 03-09 09:40 ?78次下載

    RTL8111E和RTL8105E網(wǎng)卡驅(qū)動(dòng)芯片的電路原理圖

    本文檔的主要內(nèi)容詳細(xì)介紹的是1RTL8111E和RTL8105E的電路原理圖。
    發(fā)表于 01-10 08:00 ?79次下載
    <b class='flag-5'>RTL</b>8111E和<b class='flag-5'>RTL</b>8105E網(wǎng)卡驅(qū)動(dòng)芯片的<b class='flag-5'>電路</b>原理圖

    RTL8111E和RTL8105E網(wǎng)卡電路原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是RTL8111E和RTL8105E網(wǎng)卡電路原理圖免費(fèi)下載。
    發(fā)表于 01-13 08:00 ?99次下載
    <b class='flag-5'>RTL</b>8111E和<b class='flag-5'>RTL</b>8105E網(wǎng)卡<b class='flag-5'>電路</b>原理圖免費(fèi)下載

    RTL8187和RTL8225USB無(wú)線(xiàn)網(wǎng)卡電路圖與RTL822電路

    RTL8187和RTL8225USB無(wú)線(xiàn)網(wǎng)卡電路圖+RTL8225電路圖注釋分析
    發(fā)表于 09-07 17:48 ?8次下載

    RTL8211 DEMO電路參考設(shè)計(jì)

    RTL8211 DEMO 電路參考設(shè)計(jì)
    發(fā)表于 01-29 09:36 ?52次下載

    專(zhuān)用集成電路的設(shè)計(jì)原則 專(zhuān)用集成電路的設(shè)計(jì)方法

    原則方法,以確保設(shè)計(jì)的成功和高質(zhì)量。本文將詳細(xì)介紹專(zhuān)用集成電路的設(shè)計(jì)原則方法。 一、設(shè)計(jì)原則
    的頭像 發(fā)表于 05-04 17:16 ?2125次閱讀

    電路板檢修方法原則是什么

    電路板檢修方法原則: 安全第一:在進(jìn)行電路板檢修時(shí),確保遵循所有安全規(guī)程,如斷電、佩戴防靜電手環(huán)等。 了解電路板:在開(kāi)始檢修前,了解
    的頭像 發(fā)表于 05-29 14:42 ?672次閱讀