衡阳派盒市场营销有限公司

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

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

3天內不再提示

基于FPGA的數字電路設計

h1654155282.3538 ? 來源:電子迷 ? 作者:電子迷 ? 2020-08-16 12:03 ? 次閱讀

數字電路作為一門專業基礎課,除了介紹數字電路的理論知識外,更需要通過配套的實驗平臺將理論知識和實踐環節相結合,培養學生的動手能力和實踐創新能力。為此,自主開發了基于 FPGA 的數字電路“口袋實驗室”。該“口袋實驗室”基于目前流行的FPGA 芯片開發,已經實際應用于數字電路教學實踐中。

1總體設計

“口袋實驗室”的電路包括電源、FPGA、下載電路、數碼管、VGA 接口、撥碼開關、按鍵、LED 燈和雙排針擴展接口。其總體框圖見圖 1,實物圖見圖 2。

圖 1 系統總體框圖

圖 2 系統實物圖

XC6SLX9 是 Xilinx 公司的 Spartan 系列 FPGA, 采用 45 nm 工藝,共有 9 152 個 Logic Cells、1 430 個Slices、90 kB 分布式 RAM,共有 144 個引腳,其中102 個是通用 I/O 口,資源相對豐富。XC6SLX9 內核供電電壓為 1.2 V;I/O 口的電平可以設置為 LVTTL、LVCMOS、LVDS 等多種電壓標準;內置高性能的時鐘管理模塊,1 個 CMT 包含 1 個 PLL 和 2 個 DCM, 能進行分頻、倍頻;XC6SLX9 支持主動模式和被動模式,以及 SPI、BPI、JTAG 等多種配置方式。

設計中預留了 30 個擴展接口,由雙排針引出,其中 24 個是 FPGA 的通用 I/O,3 個 3.3 V 引腳和 3 個地引腳。串行通信采用 CH340G 串口芯片,用于 FPGA 和 PC 機之間的通信。“口袋實驗室”擁有 2 個 4 位共陽極數碼管、1 個無源蜂鳴器、1 個八位撥碼開關、1 個 VGA 接口以及 10 顆 LED 燈和 6 個按鍵,可以滿足數字電路基本的實驗需要。

2電路設計

2.1電源電路

電源系統為整個系統提供能量,是系統的基礎。采用 LM1085 芯片提供 3.3 V 電壓,采用 AMS1117 芯片提供 1.2 V 電壓。

考慮到XC6SLX9 的 3.3 V 電源和其他外設共用一個電源芯片,為保證其他外設電流突變時不影響XC6SLX9 的正常供電, 使用一個功率電感以隔離FPGA 和外設的電源。具體電路設計見圖 3。

圖 3 LM1085 電路和 AMS1117 電路

XC6SLX9 對電源的要求較高,電源引腳附近需要多個去耦電容,以減小電源瞬變,保證電源完整性。電源部分還設計有 1 顆LED 燈用于指示FPGA 電源是否正常。

2.2配置電路設計

配置電路一個是使用 JTAG 配置的電路,另一個是使用 FLASH 的主動 SPI 配置電路。

2.2.1JTAG 配置電路

JTAG 配置電路見圖 4。

圖 4 JTAG 配置電路

JTAG 的主要引腳 TMS、TCK、TDI、TDO 經 4.7 kΩ

電阻上拉,以保護電路。JTAG 引腳在印刷電路板(PCB)上通過 14 針 2.0 mm 間距的簡易牛角座引出。簡易牛角座采用防反插設計,以保證 JTAG 連接正確。

PROGRAM_B 引腳默認上拉,通過按鍵接地,可以用于 FPGA 的軟復位。DONE 引腳上拉,且有 LED 指示 FPGA 是否配置完成。

2.2.2FLASH 電路

設計所選用的 FPGA 基于 SRAM 工藝,掉電后不能保存數據,因此在重新上電之后必須從外部的配置存儲器加載配置。FLASH 電路見圖 5(a)。MODE0 和MODE1 的電平決定了 FPGA 的配置方式,當 MODE0 拉高以及 MODE1 拉低時,FPGA 使用主動 SPI 配置模式。接口電路見圖 5(b)。

圖 5 FLASH 電路和 FPGA 的 FLASH 接口電路

2.3串口通信設計

選用 CH340G 作為 FPGA 和 PC 機之間通信的轉換芯片。CH340G 是常用的USB 轉串口的芯片,兼容 5 V 系統和 3.3 V 系統,由于本設計中選用的 XC6SLX9 屬于 3.3 V 系統,因此 CH340G 的供電電壓設置為3.3 V,如果供電電壓調整為 5 V,則串口通信將發生故障,數據不能通過串口發送至 PC 機。串口部分電路見圖 6。

圖 6 串口通信部分電路

2.4 擴展接口設計

為保證“口袋實驗室”的擴展能力,在設計時將FPGA 的 24 個通用 I/O 口通過雙排排針在 PCB 上引出,可供使用者外接電路。

為了防止 FPGA 的 I/O 接口接入過高的電壓或者通過過大的電流而損壞 FPGA,設計中使用雙向電平轉換芯片 TXS0108E 對 FPGA 的 I/O 口和外部接口進行隔離,以保護 FPGA 芯片。

3實踐教學實例

3.1數碼管顯示實驗

實驗要求使用數碼管顯示時間精度為 100 ms 的秒表,最低位數字每 100 ms 加 1。

3.1.1實驗硬件電路

“口袋實驗室”選用的數碼管是 4 位共陽極數碼管,其中公共端使用三極管驅動,其余 A、B、C、D、E、F、G、DP 8 個引腳分別和 FPGA 的 I/O 口連接。電路如圖 7 所示。

圖 7 數碼管電路

3.1.2FPGA 代碼設計

FPGA 代碼設計思路如下:將系統的 50 MHz 時鐘分頻為 50 Hz 的逐位掃描時鐘和 10 Hz 的計數時鐘,最低位通過 10 Hz 的時鐘進行計數,計數使用8421BCD 碼表示,并轉化為數碼管顯示的 8 位二進制代碼輸出。由于是共陽極數碼管,當引腳公共端高電平,其他引腳為低電平時,對應的 LED 才會亮。數碼管二進制碼的最高位為小數點位。實驗仿真及實際運行效果見圖 8。

圖 8 數碼管仿真時序圖與數碼管實驗實際運行圖

由于實際仿真時間過長, 因此在仿真時縮短了計數的時間。表 1 為 BCD 碼與數碼管二進制碼對應表。

表 1 數字的 BCD 碼與數碼管二進制碼對應表

3.2蜂鳴器控制實驗

實驗要求通過編程控制無源蜂鳴器,使之在輸入不同頻率的 PWM 波情況下,發出不同音調頻率的聲音。

3.2.1實驗硬件電路

無源蜂鳴器的硬件電路設計見圖 9。

圖 9 蜂鳴器電路圖

3.2.2FPGA 代碼設計

無源蜂鳴器輸入不同頻率的 PWM 會發出不同頻率的聲音,頻率和音調對應見表 2。

表 2 頻率和音調對應表

通過 ISE 的 Clock Wizard 將 50 MHz 的系統時鐘頻率分頻為 12 MHz,然后通過計數輸出不同的頻率, 計數的上限值由撥碼開關和按鍵控制,撥碼開關用于選擇 3 個音調,按鍵用于選擇各個音調下的 7 個不同頻率,以此實現輸出不同音調頻率的聲音。圖 10 為蜂鳴器控制仿真圖。

圖 10 蜂鳴器控制仿真圖

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21796

    瀏覽量

    605972
  • 數字電路
    +關注

    關注

    193

    文章

    1629

    瀏覽量

    80821
收藏 人收藏

    評論

    相關推薦

    數字電路有哪些特點和作用

    在電子技術領域,數字電路具有一系列鮮明的特點,這些特點使其在眾多應用場景中發揮關鍵作用,推動著現代科技不斷向前發展。 信號的離散性是數字電路最為突出的特點之一。數字電路所處理的數字信號
    的頭像 發表于 02-04 17:17 ?81次閱讀

    數字電路與控制系統關系

    在現代技術領域,數字電路和控制系統是兩個不可或缺的組成部分。數字電路作為電子技術的基礎,為控制系統提供了必要的硬件支持。而控制系統則是利用這些硬件來實現對各種機械設備或過程的精確控制。 數字電路
    的頭像 發表于 01-24 09:43 ?123次閱讀

    數字電路編程語言介紹

    文本形式描述電路的行為和結構。 并行性和并發性 :數字電路編程語言支持并行和并發操作的描述,這是數字電路設計中的基本特性。 模塊化 :這些語言支持模塊化設計,允許設計師將復雜的電路分解
    的頭像 發表于 01-24 09:39 ?156次閱讀

    數字電路與模擬電路的區別

    在電子工程領域,數字電路和模擬電路是兩種截然不同的技術。它們在處理信號、設計方法、應用領域以及性能特點上有著明顯的差異。 一、信號處理方式 1.1 模擬電路 模擬電路處理的是連續變化的
    的頭像 發表于 01-24 09:36 ?147次閱讀

    模擬電路數字電路的區別

    在現代電子技術中,模擬電路數字電路是兩種截然不同的電路類型,它們各自有著獨特的特點和應用場景。 一、信號處理方式 模擬電路: 模擬電路處理
    的頭像 發表于 01-24 09:22 ?183次閱讀

    數字電路仿真實現

    電子發燒友網站提供《數字電路仿真實現.pdf》資料免費下載
    發表于 01-21 09:24 ?0次下載
    <b class='flag-5'>數字電路</b>仿真實現

    BJT在數字電路中的應用

    數字電路設計中,BJT因其獨特的電氣特性和成本效益而被廣泛使用。BJT可以作為開關使用,控制電流的流動,從而實現邏輯功能。 1. BJT作為開關 在數字電路中,BJT最常見的應用之一是作為開關
    的頭像 發表于 12-31 16:34 ?356次閱讀

    如何使用 Verilog 進行數字電路設計

    使用Verilog進行數字電路設計是一個復雜但有序的過程,它涉及從概念設計到實現、驗證和優化的多個階段。以下是一個基本的步驟指南,幫助你理解如何使用Verilog來設計數字電路: 1. 明確設計需求
    的頭像 發表于 12-17 09:47 ?362次閱讀

    數字電路可以處理模擬信號嗎

    數字電路主要處理數字信號,即離散的、二進制的信號。然而,在某些情況下,數字電路也可以處理模擬信號,即連續的、非二進制的信號。 數字電路與模擬信號
    的頭像 發表于 08-11 11:08 ?787次閱讀

    數字電路是對什么信號進行傳輸的

    數字電路是一種電子系統,它使用數字信號進行信息傳輸和處理。數字信號是由離散的電壓水平或電流水平表示的信號,通常用二進制代碼表示。與模擬電路不同,數字
    的頭像 發表于 08-11 11:00 ?916次閱讀

    數字電路中的亞穩態是什么

    數字電路的設計與實現中,亞穩態是一個不可忽視的現象。它可能由多種因素引發,對電路的穩定性和可靠性產生嚴重影響。本文將深入探討數字電路中亞穩態的概念、產生原因、影響以及應對策略,以期為讀者提供全面而深入的理解。
    的頭像 發表于 05-21 15:29 ?1405次閱讀

    數字電路和模擬電路的區別與聯系

    數字電路和模擬電路是電子電路的兩個主要分支,它們在電子技術中具有不同的應用和工作原理。本文將詳細討論數字電路和模擬電路的區別與聯系。 首先,
    的頭像 發表于 04-21 10:29 ?3158次閱讀

    數字電路仿真元件符號是什么

    數字電路仿真元件通常用符號來表示。這些符號是通過簡潔和易于理解的圖形來表示元件的特性和功能。符號是數字電路設計和仿真過程中非常重要的一部分,幫助工程師和設計者有效地溝通和理解電路的功能。在本文
    的頭像 發表于 04-21 09:20 ?2525次閱讀

    數字電路與邏輯設計

    電子發燒友網站提供《數字電路與邏輯設計.ppt》資料免費下載
    發表于 03-11 09:21 ?9次下載

    兩位格雷碼減法器數字電路設計

    目前,針對數字電路研究的主要目標都是為了提高電路的運算速度、降低電路的功耗和減少電路邏輯輸出的誤差,因此延時、功耗和誤差是數字電路三個最重要
    的頭像 發表于 02-19 13:36 ?1242次閱讀
    兩位格雷碼減法器<b class='flag-5'>數字電路設計</b>
    百家乐官网长龙如何判断| 大发888英皇国际| 百家乐如何睇路| 星期八百家乐官网的玩法技巧和规则 | 百家乐永利娱乐场开户注册| 百家乐稳赢投资法| 实战百家乐十大取胜原因百分百战胜百家乐不买币不吹牛只你能做到按我说的.百家乐基本规则 | 真人百家乐官网网站接口| 百家乐官网教父方法| 网络百家乐官网怎么作弊| 百家乐官网赌博现金网| 立博百家乐官网的玩法技巧和规则| 百家乐如何必胜| 中国百家乐软件| 大发888官网 df888ylcxz46| 六合彩码报| 大发888网址官方| 恒和国际| 金赞百家乐官网现金网| 网上真钱老虎机| 百家乐官网全讯网娱乐城| 澳门百家乐官网然后赢| 百家乐视频看不到| 苹果百家乐的玩法技巧和规则 | 长春市| 单双和百家乐官网游戏机厂家| 蓝盾百家乐官网具体玩法技巧| 百家乐视频百家乐| 真博百家乐的玩法技巧和规则| 大发888网址| 金赞百家乐现金网| 金钱豹百家乐的玩法技巧和规则 | 大发888注册送彩金| 网上博彩娱乐| 金百家乐官网网站| 真人百家乐现金游戏| 威尼斯人娱乐城图| 优博娱乐城| 百家乐官网多少钱| 菲律宾百家乐娱乐平台| 新锦江娱乐城|