上(shàng)一(yī)次(cì)的(de)視頻課我(wǒ)们(men)介紹完学習FPGA的(de)誤區(qū),講完这(zhè)个(gè)誤區(qū)後(hòu),这(zhè)次(cì)的(de)重(zhòng)點(diǎn)是(shì)FPGA知識大串聯。
大家(jiā)看(kàn)一(yī)下(xià)这(zhè)个(gè)FPGA電(diàn)路(lù)結構,FPGA的(de)所(suǒ)有(yǒu)電(diàn)路(lù)結構就(jiù)是(shì)这(zhè)樣(yàng)子的(de)一(yī)種(zhǒng)形式。我(wǒ)们(men)用(yòng)verilog代(dài)碼綜合出(chū)来(lái)後(hòu)的(de)結果(guǒ)也(yě)是(shì)这(zhè)種(zhǒng)形式:一(yī)个(gè)組合邏輯加一(yī)个(gè)D觸發(fà)器,構成(chéng)了(le)一(yī)个(gè)功能(néng)的(de)電(diàn)路(lù)。那(nà)麼(me),每一(yī)个(gè)这(zhè)樣(yàng)的(de)電(diàn)路(lù)組合起来(lái)就(jiù)达(dá)到(dào)我(wǒ)们(men)FPGA所(suǒ)实現(xiàn)的(de)功能(néng)。大家(jiā)應(yìng)該也(yě)听(tīng)说(shuō)过(guò)一(yī)句(jù)話(huà),verilog代(dài)碼里(lǐ)面(miàn)都是(shì)并行結構并行執行的(de)。
为(wèi)什麼(me)会(huì)是(shì)并行結構?我(wǒ)们(men)一(yī)个(gè)always綜合出(chū)这(zhè)樣(yàng)一(yī)个(gè)電(diàn)路(lù),一(yī)个(gè)always綜合出(chū)这(zhè)樣(yàng)一(yī)个(gè)電(diàn)路(lù)。假如(rú)它(tā)们(men)之間(jiān)有(yǒu)个(gè)狀态之後(hòu),我(wǒ)们(men)看(kàn)下(xià),如(rú)果(guǒ)时(shí)鐘(zhōng)延同(tóng)时(shí)来(lái),我(wǒ)们(men)的(de)信(xìn)号(hào)全(quán)部(bù)同(tóng)时(shí)變(biàn)化(huà),想(xiǎng)象(xiàng)一(yī)个(gè)電(diàn)路(lù),我(wǒ)们(men)在(zài)一(yī)个(gè)電(diàn)路(lù)里(lǐ)面(miàn)我(wǒ)们(men)都算通(tòng)電(diàn)狀态,里(lǐ)面(miàn)所(suǒ)有(yǒu)的(de)電(diàn)路(lù)都是(shì)一(yī)起在(zài)工作的(de)。沒(méi)有(yǒu)所(suǒ)謂说(shuō)这(zhè)个(gè)電(diàn)路(lù)在(zài)工作,另(lìng)一(yī)个(gè)不(bù)在(zài)工作的(de)这(zhè)種(zhǒng)情(qíng)況,所(suǒ)以(yǐ),时(shí)鐘(zhōng)上(shàng)沿来(lái)之後(hòu),信(xìn)号(hào)又不(bù)斷遊動(dòng),这(zhè)个(gè)就(jiù)是(shì)FPGA的(de)基本(běn)電(diàn)路(lù)結構,我(wǒ)们(men)一(yī)定(dìng)要(yào)非(fēi)常清(qīng)楚这(zhè)个(gè)電(diàn)路(lù)結構。这(zhè)也(yě)是(shì)我(wǒ)们(men)後(hòu)面(miàn)要(yào)講的(de)一(yī)个(gè)基礎知識點(diǎn)。
我(wǒ)们(men)这(zhè)里(lǐ)用(yòng)一(yī)页(yè)的(de)ppt就(jiù)可(kě)以(yǐ)所(suǒ)有(yǒu)知識點(diǎn)串聯起来(lái)。
我(wǒ)们(men)所(suǒ)有(yǒu)電(diàn)路(lù)是(shì)D觸發(fà)器組合邏輯,D觸發(fà)器組合邏輯,他(tā)们(men)之間(jiān)D觸發(fà)之間(jiān)用(yòng)个(gè)时(shí)鐘(zhōng),統一(yī)的(de)工作时(shí)鐘(zhōng)上(shàng)升(shēng)沿進(jìn)行工作。
那(nà)關(guān)于(yú)組合邏輯,我(wǒ)们(men)要(yào)講哪些內(nèi)容呢?带(dài)着一(yī)系(xì)列的(de)問(wèn)題(tí)我(wǒ)们(men)就(jiù)可(kě)以(yǐ)把知識大串聯起来(lái)。
首先(xiān),如(rú)果(guǒ)说(shuō)我(wǒ)们(men)想(xiǎng)一(yī)想(xiǎng)組合邏輯有(yǒu)哪些類(lèi)型?这(zhè)類(lèi)型用(yòng)verilog怎麼(me)進(jìn)行表(biǎo)示;我(wǒ)们(men)用(yòng)verilog代(dài)碼怎麼(me)写这(zhè)些組合邏輯?之後(hòu)組合邏輯的(de)时(shí)序是(shì)怎麼(me)樣(yàng)子的(de)?組合邏輯里(lǐ)面(miàn)有(yǒu)个(gè)很重(zhòng)要(yào)概念是(shì)競争和(hé)冒险,这(zhè)是(shì)什麼(me)情(qíng)況呢?如(rú)果(guǒ)有(yǒu)競争冒险,我(wǒ)们(men)用(yòng)什麼(me)辦(bàn)法去(qù)進(jìn)行解(jiě)決它(tā)?
講完組合邏輯之後(hòu),我(wǒ)们(men)会(huì)講D觸發(fà)器。首先(xiān)会(huì)講D觸發(fà)器的(de)結構,接下(xià)来(lái)会(huì)講D觸發(fà)器的(de)时(shí)序,它(tā)的(de)时(shí)序跟組合邏輯有(yǒu)什麼(me)不(bù)一(yī)樣(yàng),然後(hòu)时(shí)序里(lǐ)面(miàn)有(yǒu)一(yī)个(gè)很重(zhòng)要(yào)概念,建立和(hé)保持(chí)时(shí)間(jiān),如(rú)果(guǒ)建立和(hé)保持(chí)时(shí)間(jiān)不(bù)滿足話(huà),就(jiù)会(huì)有(yǒu)个(gè)亞稳态的(de)情(qíng)況。什麼(me)叫亞稳态?它(tā)到(dào)底有(yǒu)什麼(me)危害?如(rú)果(guǒ)知道(dào)它(tā)有(yǒu)危害,那(nà)它(tā)什麼(me)时(shí)候会(huì)出(chū)現(xiàn)呢?那(nà)所(suǒ)以(yǐ)它(tā)出(chū)現(xiàn)的(de)场景是(shì)在(zài)哪些场景?好(hǎo),知道(dào)这(zhè)场景之後(hòu)我(wǒ)们(men)就(jiù)要(yào)想(xiǎng)辦(bàn)法解(jiě)決它(tā)。那(nà)亞稳态如(rú)何解(jiě)決?我(wǒ)们(men)到(dào)时(shí)解(jiě)決方(fāng)法分(fēn)两(liǎng)種(zhǒng)情(qíng)況:一(yī)个(gè)是(shì)單一(yī)信(xìn)号(hào),就(jiù)是(shì)1比特(tè)信(xìn)号(hào);也(yě)還(huán)有(yǒu)一(yī)種(zhǒng)是(shì)多(duō)比特(tè)信(xìn)号(hào)。这(zhè)两(liǎng)種(zhǒng)解(jiě)決方(fāng)法有(yǒu)什麼(me)不(bù)一(yī)樣(yàng)?
講完了(le)D觸發(fà)器之後(hòu),我(wǒ)们(men)会(huì)把組合邏輯和(hé)D觸發(fà)器聯合起来(lái)。这(zhè)講組合邏輯跟D觸發(fà)器就(jiù)是(shì)一(yī)个(gè)正(zhèng)确的(de)電(diàn)路(lù)結構,那(nà)麼(me)有(yǒu)正(zhèng)确也(yě)有(yǒu)不(bù)正(zhèng)确。當同(tóng)学们(men)在(zài)做設計(jì)的(de)时(shí)候,經(jīng)常会(huì)犯的(de)一(yī)些結構錯誤,不(bù)合理結構有(yǒu)哪些?它(tā)们(men)之後(hòu)組合邏輯D觸發(fà)器的(de)时(shí)序是(shì)什麼(me)樣(yàng)子的(de)?它(tā)跟組合邏輯和(hé)D觸發(fà)器各(gè)有(yǒu)什麼(me)不(bù)一(yī)樣(yàng)?接下(xià)来(lái)我(wǒ)们(men)用(yòng)verilog去(qù)实現(xiàn)这(zhè)代(dài)碼。我(wǒ)们(men)在(zài)verilog实現(xiàn)做很重(zhòng)要(yào)一(yī)个(gè)描述方(fāng)法叫行为(wèi)描述是(shì)怎麼(me)做的(de),後(hòu)續明(míng)德揚視頻課会(huì)细(xì)講一(yī)个(gè)狀态機(jī)的(de)設計(jì)。
时(shí)鐘(zhōng)是(shì)FPGA的(de)一(yī)个(gè)基礎,那(nà)也(yě)是(shì)一(yī)个(gè)很重(zhòng)要(yào)概念,是(shì)FPGA的(de)設計(jì)的(de)重(zhòng)點(diǎn)和(hé)難點(diǎn)。那(nà)麼(me)时(shí)鐘(zhōng)是(shì)什麼(me)概念?时(shí)鐘(zhōng)里(lǐ)面(miàn)有(yǒu)个(gè)很重(zhòng)要(yào)的(de)SKEW,它(tā)对(duì)電(diàn)路(lù)有(yǒu)什麼(me)影響?之後(hòu)就(jiù)是(shì)时(shí)鐘(zhōng)頻率。經(jīng)常有(yǒu)同(tóng)学会(huì)問(wèn)題(tí),我(wǒ)这(zhè)个(gè)電(diàn)路(lù)能(néng)跑一(yī)百(bǎi)兆(zhào)啊,他(tā)的(de)那(nà)个(gè)電(diàn)路(lù)“能(néng)跑一(yī)百(bǎi)五(wǔ)十(shí)兆(zhào)”就(jiù)是(shì)使用(yòng)頻率。讓那(nà)它(tā)取(qǔ)決什麼(me)因(yīn)素?这(zhè)就(jiù)引出(chū)我(wǒ)们(men)一(yī)个(gè)關(guān)鍵路(lù)徑的(de)概念,什麼(me)叫“關(guān)鍵路(lù)徑”?知道(dào)这(zhè)个(gè)概念以(yǐ)後(hòu)我(wǒ)们(men)怎麼(me)解(jiě)決它(tā)?这(zhè)又推出(chū)一(yī)个(gè)很重(zhòng)要(yào)概念“流水(shuǐ)線(xiàn)設計(jì)”。以(yǐ)上(shàng)就(jiù)是(shì)我(wǒ)们(men)FPGA的(de)所(suǒ)有(yǒu)知識點(diǎn)。一(yī)张(zhāng)图(tú)就(jiù)可(kě)以(yǐ)列出(chū)来(lái)。相關(guān)的(de)視頻地(dì)址:FPGA知識大串講_點(diǎn)透学習誤區(qū)_明(míng)德揚課程_哔哩哔哩_bilibili








