日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

零基礎(chǔ)學習:基于FPGA的多路選擇器設(shè)計(附代碼)

發(fā)燒友研習社 ? 來源:未知 ? 2023-06-08 18:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

大俠好,歡迎來到FPGA技術(shù)江湖。本系列將帶來FPGA的系統(tǒng)性學習,從最基本的數(shù)字電路基礎(chǔ)開始,最詳細操作步驟,最直白的言語描述,手把手的“傻瓜式”講解,讓電子、信息、通信類專業(yè)學生、初入職場小白及打算進階提升的職業(yè)開發(fā)者都可以有系統(tǒng)性學習的機會。

系統(tǒng)性的掌握技術(shù)開發(fā)以及相關(guān)要求,對個人就業(yè)以及職業(yè)發(fā)展都有著潛在的幫助,希望對大家有所幫助。后續(xù)會陸續(xù)更新 Xilinx 的 Vivado、ISE 及相關(guān)操作軟件的開發(fā)的相關(guān)內(nèi)容,學習FPGA設(shè)計方法及設(shè)計思想的同時,實操結(jié)合各類操作軟件,會讓你在技術(shù)學習道路上無比的順暢,告別技術(shù)學習小BUG卡破腦殼,告別目前忽悠性的培訓誘導,真正的去學習去實戰(zhàn)應(yīng)用,這種快樂試試你就會懂的。話不多說,上貨。

多路選擇器設(shè)計

多路選擇器是數(shù)據(jù)選擇器的別稱。在多路數(shù)據(jù)傳送過程中,能夠根據(jù)需要將其中任意一路選出來的電路,叫做數(shù)據(jù)選擇器,也稱多路選擇器或多路開關(guān)。

二選一多路選擇器

二選一多路選擇器的數(shù)據(jù)輸入有兩個,分別為dataa和datab。為了能夠確定選擇那一路數(shù)據(jù)能夠通過,還需要一個選擇端(sel)。因為輸入只有兩路數(shù)據(jù),選擇端只要能夠表現(xiàn)出兩種狀態(tài)即可,因而選擇端位寬為1即可。

假設(shè)dataa和datab都是位寬為1的數(shù)據(jù),當sel為0時,選擇dataa通過;當sel為1時,選擇datab通過;odata表示通過后的數(shù)據(jù)。

c8a1bdbc-05e9-11ee-962d-dac502259ad0.png

圖1 :二選一多路選擇器模型

根據(jù)上述功能,列出真值表。

c8ab107e-05e9-11ee-962d-dac502259ad0.png

圖2 :二選一多路選擇器真值表

根據(jù)真值表,化簡得出布爾表達式:

odata = (dataa &(~sel)) | (datab & sel);

verilog中,算術(shù)運算中,“&”表示算術(shù)(按位)與,“|”表示算術(shù)(按位)或,“~”表示算術(shù)(按位)取反。

在數(shù)字電路基礎(chǔ)中,根據(jù)表達式,就可以得到電路圖。

現(xiàn)在我們要在FPGA中實現(xiàn),二選一多路選擇命名為“mux2_1”,不要命名為mux21,mux21是quartus中默認器件庫中的名字,命名相同會出現(xiàn)錯誤。

建立工程后,輸入如下設(shè)計代碼:(mux2_1代碼)

c8b63508-05e9-11ee-962d-dac502259ad0.png

c8bd58e2-05e9-11ee-962d-dac502259ad0.png

圖4 :mux2_1的RTL視圖

設(shè)計完成后,輸入如下testbench代碼:(mux2_1_tb代碼)

c8c84fb8-05e9-11ee-962d-dac502259ad0.png

在verilog中,“//”表示本行被注釋,綜合器綜合時,自動略過。

在testbench中,連接線的名字可以隨意定義,建議和端口相同。

設(shè)置好testbench后,運行RTL 仿真。

c8d76228-05e9-11ee-962d-dac502259ad0.png

圖6 :RTL仿真波形

對比波形和真值表,設(shè)計正確。

四選一多路選擇器

四選一多路選擇器的數(shù)據(jù)輸入有四個,分別為dataa、datab、datac和datad。為了能夠確定選擇那一路數(shù)據(jù)能夠通過,還需要一個選擇端(sel)。因為輸入四路數(shù)據(jù),選擇端要求能夠表現(xiàn)出四種狀態(tài),因而選擇端位寬為2。

假設(shè)dataa、 datab、datac和datad都是位寬為8的數(shù)據(jù),當sel為00時,選擇dataa通過;當sel為01時,選擇datab通過;當sel為10時,選擇datac通過;當sel為11時,選擇datad通過;odata表示通過后的數(shù)據(jù)。

c8e2adb8-05e9-11ee-962d-dac502259ad0.png

圖7 :四選一多路選擇器模型

根據(jù)組合邏輯設(shè)計規(guī)則,我們將所有的情況全部列出,得出真值表,進而得到布爾表達式。但是現(xiàn)在輸入的組合排列太多了(2的34次冪),不能夠直接得出真值表。

此時的設(shè)計有兩種方法。

第一種方法,根據(jù)功能拆分邏輯。將輸入為8的四選一多路選擇器,拆分為8個位寬為1的四選一多路選擇器,首先列出位寬為1真值表,得出位寬為1的四選一多路選擇器。然后并接八個即可。

c8ec1042-05e9-11ee-962d-dac502259ad0.png

圖8 :8個位寬1多路選擇器構(gòu)成位寬8的多路選擇器

這種設(shè)計方法,不在提供設(shè)計源碼,讀者可以自行討論設(shè)計。

第二種方法,根據(jù)verilog的設(shè)計規(guī)則,可以直接描述邏輯功能,而不用描述門電路。這種設(shè)計規(guī)則有利于將設(shè)計做的比較大。

位寬為8的四選一多路選擇器命名為“mux4_1”。

建立工程后,輸入設(shè)計代碼如下:(mux4_1代碼)

c8f7612c-05e9-11ee-962d-dac502259ad0.png

always 語句用來表示組合邏輯時,即可以采用門電路的描述方法,也可以采用功能性的描述語句。

“always @()”中()是信號敏感列表。中間可以寫入本模塊的所有的敏感信號,“*”可以表示所有的敏感信號。建議利用always語句描述組合邏輯時,用“*”表示所有信號。用“*”時,“()”可以省略。即:always@(*) 等效 always@*。

c900ca3c-05e9-11ee-962d-dac502259ad0.png

在case語句中,首先會判斷變量和那個分支相同,并且執(zhí)行對應(yīng)的表達式。當和所有的分支都不相同時,執(zhí)行default后的表達式。

verilog規(guī)定,在always語句中被賦值的變量,應(yīng)該定義為“reg”類型。

c90c7bd4-05e9-11ee-962d-dac502259ad0.png

圖11 :mux4_1的RTL視圖

設(shè)計完成后,輸入testbench代碼。mux4_1_tb 代碼如下:

c917c0de-05e9-11ee-962d-dac502259ad0.png

由于本次輸入的的組合太多,不能全覆蓋測試。故采用隨機數(shù)來進行測試。

$random是一個系統(tǒng)函數(shù),調(diào)用時,可以返回一個隨機值。注意:這個系統(tǒng)函數(shù)只能出現(xiàn)testbench中,在設(shè)計中出現(xiàn)是不可綜合的。

“$random函數(shù)調(diào)用時返回一個32位的隨機數(shù),它是一個帶符號的整形數(shù)...”。例:

reg[23:0] rand;

rand=$random % 60; //產(chǎn)生一個在 -59—59范圍的隨機數(shù)

產(chǎn)生0~59之間的隨機數(shù),例:

reg[23:0] rand;

rand={$random} % 60; //通過{}產(chǎn)生0—59范圍的隨機數(shù)

產(chǎn)生在min, max之間隨機數(shù),例:

reg[23:0] rand;

rand = min+{$random}%(max-min+1);

在testbench中,需要按照一定順序給輸入線賦值。在mux4_1_tb中,我們可以通過延遲賦值,然后再次延遲賦值,來完成賦值。因為賦值時采用隨機數(shù),所以每次編寫的語句是相同的。verilog中提供了repeat語句,用來減少人工輸入。

c926f324-05e9-11ee-962d-dac502259ad0.png

圖13 :兩種等效的賦值方式

輸入testbench后,進行綜合分析。

設(shè)置testbench,運行RTL仿真。

c931d97e-05e9-11ee-962d-dac502259ad0.png

圖14:RTL仿真圖

經(jīng)過分析,符合四選一多路選擇器的設(shè)計。


原文標題:零基礎(chǔ)學習:基于FPGA的多路選擇器設(shè)計(附代碼)

文章出處:【微信公眾號:發(fā)燒友研習社】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。


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

原文標題:零基礎(chǔ)學習:基于FPGA的多路選擇器設(shè)計(附代碼)

文章出處:【微信號:發(fā)燒友研習社,微信公眾號:發(fā)燒友研習社】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    SN54HCT157與SN74HCT157數(shù)據(jù)選擇器/多路復用器:特性、參數(shù)與應(yīng)用解析

    SN54HCT157與SN74HCT157數(shù)據(jù)選擇器/多路復用器:特性、參數(shù)與應(yīng)用解析 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是常用的基礎(chǔ)器件,它們在信號
    的頭像 發(fā)表于 01-19 11:00 ?746次閱讀

    Texas Instruments SNx4HC253:雙4線至1線數(shù)據(jù)選擇器/多路復用器的設(shè)計指南

    Texas Instruments SNx4HC253:雙4線至1線數(shù)據(jù)選擇器/多路復用器的設(shè)計指南 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是實現(xiàn)信號切換和數(shù)據(jù)傳輸?shù)闹匾M件。Texa
    的頭像 發(fā)表于 01-19 10:50 ?737次閱讀

    深入剖析SNx4HC257和SNx4HC258:高性能數(shù)據(jù)選擇器/多路復用器

    深入剖析SNx4HC257和SNx4HC258:高性能數(shù)據(jù)選擇器/多路復用器 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器/多路復用器是實現(xiàn)信號選擇和切換的關(guān)
    的頭像 發(fā)表于 01-19 10:50 ?535次閱讀

    SN54HC153與SN74HC153:雙4線至1線數(shù)據(jù)選擇器/多路復用器的深度解析

    SN54HC153與SN74HC153:雙4線至1線數(shù)據(jù)選擇器/多路復用器的深度解析 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是非常重要的基礎(chǔ)元件,它們能夠?qū)崿F(xiàn)數(shù)據(jù)的高效
    的頭像 發(fā)表于 01-19 10:45 ?799次閱讀

    深入解析SNx4AHCT157:高性能數(shù)據(jù)選擇器/多路復用器

    深入解析SNx4AHCT157:高性能數(shù)據(jù)選擇器/多路復用器 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是實現(xiàn)信號切換和選擇的關(guān)鍵組件。今天,我
    的頭像 發(fā)表于 01-16 17:40 ?2341次閱讀

    深入解析SN74AHCT257:四通道2選1數(shù)據(jù)選擇器/多路復用器

    深入解析SN74AHCT257:四通道2選1數(shù)據(jù)選擇器/多路復用器 一、前言 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是非常重要的基礎(chǔ)器件。今天我們要深入探討的是德州儀器(Texas
    的頭像 發(fā)表于 01-16 17:40 ?2183次閱讀

    深入解析CDx4ACT151 8線至1線數(shù)據(jù)選擇器/多路復用器

    深入解析CDx4ACT151 8線至1線數(shù)據(jù)選擇器/多路復用器 在電子設(shè)計的世界里,數(shù)據(jù)選擇器多路復用器起著至關(guān)重要的作用。今天,我們就來深入探討德州儀器(TI)的CDx4ACT15
    的頭像 發(fā)表于 01-16 14:55 ?435次閱讀

    CD74ACT157:高性能數(shù)據(jù)選擇器/多路復用器的設(shè)計與應(yīng)用

    CD74ACT157:高性能數(shù)據(jù)選擇器/多路復用器的設(shè)計與應(yīng)用 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇多路復用是常見的需求。今天要給大家介紹的CD74ACT157,就是一款非常出色的四通道2選1數(shù)
    的頭像 發(fā)表于 01-16 14:40 ?377次閱讀

    探索SNx4LVC257A:高性能數(shù)據(jù)選擇器多路復用器的設(shè)計奧秘

    探索SNx4LVC257A:高性能數(shù)據(jù)選擇器多路復用器的設(shè)計奧秘 在電子設(shè)計的廣闊領(lǐng)域中,數(shù)據(jù)選擇器多路復用器是不可或缺的基礎(chǔ)組件,它們在信號處理、數(shù)據(jù)傳輸?shù)确矫姘l(fā)揮著關(guān)鍵作用。今
    的頭像 發(fā)表于 01-16 11:30 ?1080次閱讀

    SN74LV157A:多功能數(shù)據(jù)選擇器/多路復用器的技術(shù)剖析

    SN74LV157A:多功能數(shù)據(jù)選擇器/多路復用器的技術(shù)剖析 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器/多路復用器是一種常見且重要的器件,它們能夠在多個數(shù)據(jù)源中進行
    的頭像 發(fā)表于 01-16 11:00 ?2140次閱讀

    深入解析SN74LVC257A-EP:高性能數(shù)據(jù)選擇器/多路復用器

    深入解析SN74LVC257A-EP:高性能數(shù)據(jù)選擇器/多路復用器 在電子設(shè)計的世界里,數(shù)據(jù)選擇器/多路復用器是不可或缺的基礎(chǔ)元件,它們在信號處理和數(shù)據(jù)傳輸中起著關(guān)鍵作用。今天,我們將
    的頭像 發(fā)表于 01-15 15:10 ?685次閱讀

    SN74LV8T151-EP數(shù)據(jù)選擇器/多路復用器的設(shè)計與應(yīng)用

    SN74LV8T151-EP數(shù)據(jù)選擇器/多路復用器的設(shè)計與應(yīng)用 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器/多路復用器是常見且關(guān)鍵的器件。今天我們就來深入探討德州儀器(TI)的SN74LV8T151-
    的頭像 發(fā)表于 01-12 15:30 ?335次閱讀

    德州儀器SN74ACT157-Q1:汽車級多路數(shù)據(jù)選擇器的深度剖析

    德州儀器SN74ACT157-Q1:汽車級多路數(shù)據(jù)選擇器的深度剖析 作為一名電子工程師,在設(shè)計中選擇合適的器件至關(guān)重要。今天我們來深入了解一下德州儀器(Texas Instruments
    的頭像 發(fā)表于 01-12 13:50 ?478次閱讀

    SN74ACT153:雙4選1數(shù)據(jù)選擇器/多路復用器的詳細剖析

    SN74ACT153:雙4選1數(shù)據(jù)選擇器/多路復用器的詳細剖析 在電子設(shè)計領(lǐng)域,數(shù)據(jù)選擇器多路復用器是常見且關(guān)鍵的組件,它們能夠高效地實現(xiàn)數(shù)據(jù)的
    的頭像 發(fā)表于 01-12 13:45 ?707次閱讀

    零基礎(chǔ)學習LuatOS編程:快速上手開發(fā)實戰(zhàn)教程!

    無論你是剛接觸物聯(lián)網(wǎng)編程的新手,還是希望拓展技能的技術(shù)愛好者,本教程將為零基礎(chǔ)的讀者提供一條清晰的LuatOS學習路徑。從安裝開發(fā)工具到編寫第一個程序,我們將通過實例講解核心概念,助你快速實現(xiàn)從理論
    的頭像 發(fā)表于 06-13 17:27 ?765次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>學習</b>LuatOS編程:快速上手開發(fā)實戰(zhàn)教程!
    奉新县| 嘉鱼县| 宁海县| 志丹县| 莱芜市| 阳江市| 潮安县| 柳林县| 泰和县| 扶绥县| 蓝田县| 攀枝花市| 阿合奇县| 竹北市| 武宁县| 大埔区| 尚义县| 南汇区| 台州市| 通许县| 庄浪县| 明星| 泊头市| 连云港市| 东阿县| 寿宁县| 遵化市| 西藏| 即墨市| 会昌县| 慈利县| 应用必备| 八宿县| 郓城县| 金秀| 金塔县| 贡山| 亳州市| 从江县| 吉安市| 山阳县|