日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 工業(yè)控制 > 電子設(shè)計自動化

摘 要: 介紹一種基于FPGA的SPI Master Interface設(shè)計。依據(jù)SPI同步串行接口的通信協(xié)議, 設(shè)計一個可配置的、高度靈活的SPI Master 模塊,以滿足正常、異常及強度測試要求。利用Verilog 語言實現(xiàn)SPI接口的設(shè)計原理和編程思想。
關(guān)鍵詞: SPI同步串行接口;FPGA;測試

隨著現(xiàn)場可編程門陣列(FPGA)芯片在商業(yè)、軍事、航空航天等領(lǐng)域的廣泛應(yīng)用,其可靠性和可測試性顯得尤為重要。對設(shè)計人員來說,F(xiàn)PGA的使用相當靈活。然而,正是這種應(yīng)用的不確定性和重復(fù)可編程性,增加了芯片的測試難度。其核心問題是建立什么樣的測試模型才能使故障激活。根據(jù)需求,F(xiàn)PGA的測試大體可分為面向制造的測試過程(MTP)和面向應(yīng)用的測試過程(ATP)兩類。MTP主要是從制造商的角度來測試,ATP是在應(yīng)用級上的測試,也就是把FPGA配置為特定的功能進行測試,具有很強的針對性[1]。本文介紹ATP測試中SPI Master 模型的建立。在測試FPGA設(shè)計的集成電路時,對設(shè)計電路的性能進行實時測試是必不可少的環(huán)節(jié)[2]。這就需要設(shè)計一種接口電路,將測試數(shù)據(jù)送入設(shè)計電路。
1 SPI總線協(xié)議介紹
SPI(Serion Perpheral Interface)[3]是一種高速的、全雙工、同步的通信總線,并且在芯片的管腳上只占用4根線,節(jié)約了芯片的管腳,同時為PCB的布局節(jié)省空間,提供方便,正是出于這種簡單易用的特性,越來越多的芯片集成了這種通信協(xié)議。SPI的通信原理很簡單,它以主從方式工作,這種模式通常有一個主設(shè)備和一個或多個從設(shè)備,需要至少4根線,事實上3根也可以(用于單向傳輸時,也就是半雙工方式)。也是所有基于SPI的設(shè)備共有,分別是MISO(數(shù)據(jù)輸入),MOSI(數(shù)據(jù)輸出),SCK(時鐘),NSS(片選),如圖1所示。

(1)MOSI:主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入。
(2)MISO:主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出。
(3)SCK:時鐘信號,由主設(shè)備產(chǎn)生。
(4)NSS:從設(shè)備使能信號,由主設(shè)備控制。
使能信號低電平有效,當使能信號為低電平時,輸出數(shù)據(jù)(MOSI)在串行時鐘(SCK)下降沿變化,輸入數(shù)據(jù)(MISO)在(SCK)上升沿變化。
2 SPI Master原理
本文介紹的基于FPGA的、可配置的SPI Master接口設(shè)計,能滿足測試的各種正常、異常以及強度測試要求。此SPI接口模塊可設(shè)置為單次發(fā)送、循環(huán)發(fā)送(發(fā)送間隔可設(shè));發(fā)送數(shù)據(jù)長度可變;串行時鐘線(SCK)與輸出數(shù)據(jù)線(MOSI)時序關(guān)系可變;串行時鐘線(SCK)與使能信號(NSS)時序關(guān)系可變。
一般情況下,為了SPI數(shù)據(jù)發(fā)送的靈活性,SPI發(fā)送次數(shù)及發(fā)送間隔是由軟件實現(xiàn)的,當需要循環(huán)發(fā)送且發(fā)送間隔達到微秒甚至納秒數(shù)量級時,軟件很難實現(xiàn)。本文將SPI發(fā)送次數(shù)以及發(fā)送間隔集成到SPI Master模塊中,使SPI發(fā)送間隔可變且最小為一個SCK周期。按照SPI總線協(xié)議設(shè)計的SPI Master輸出數(shù)據(jù)(MOSI)在串行時鐘(SCK)下降沿變化,不能進行異常時序測試,而異常時序在FPGA[4,5]的接口測試中又最為重要,故本文利用觸發(fā)器特性設(shè)計電路,使SPI發(fā)送數(shù)據(jù)時序可變,精度為1個系統(tǒng)時鐘周期。
3 SPI Master 模塊結(jié)構(gòu)圖
SPI Master模塊由Bram接口、配置寄存器、控制器三部分組成,如圖2所示。此模塊系統(tǒng)時鐘為100 MHz。
BRAM接口:控制配置參數(shù)以及SPI數(shù)據(jù)的讀寫配置參數(shù)及SPI數(shù)據(jù)在BRAM中存儲結(jié)構(gòu)如表1所示。


控制器:解析配置寄存器,產(chǎn)生發(fā)送時序,控制BRAM接口進行數(shù)據(jù)讀寫。
對配置寄存器說明如下。
(1)循環(huán)發(fā)送標識寄存器:1 bit,高電平標識循環(huán)發(fā)送,低電平標識單次發(fā)送。
(2)循環(huán)發(fā)送次數(shù)寄存器:15 bit,若循環(huán)發(fā)送標識為高電平時,此寄存器值為要發(fā)送的數(shù)據(jù)長度,單位:B;發(fā)送模塊中包含一發(fā)送次數(shù)計數(shù)器,NSS從高電平變?yōu)榈碗娖?,發(fā)送次數(shù)計數(shù)器加1。
(3)循環(huán)發(fā)送間隔寄存器:16 bit,若循環(huán)發(fā)送標識為高電平時,此寄存器值為每兩次發(fā)送間隔,單位:10 ns。(最小間隔為1個SCK周期,若小于1個SCK周期,則從設(shè)備不能檢測到NSS信號變化),發(fā)送模塊中包含1個發(fā)送間隔計數(shù)器,從一次SPI發(fā)送結(jié)束開始計數(shù),直到與循環(huán)發(fā)送間隔寄存器中值相等,啟動下次發(fā)送。
(4)SCK頻率寄存器:16 bit,此寄存器值表示串行時鐘SCK周期,單位為10 ns(系統(tǒng)時鐘為100 MHz,精度為20 ns);時序模塊中包含一分頻模塊,SCK周期=(SCK頻率寄存器)×10 ns。
(5)MOSI時序寄存器:8 bit,此寄存器值表示MOSI變化與SCK下降沿間隔時間,單位:10 ns(系統(tǒng)時鐘為100 MHz,因此最小間隔為10 ns)。
(6)數(shù)據(jù)長度寄存器:16 bit,此寄存器值表示要發(fā)送數(shù)據(jù)的長度,單位:B。
(7)NSS時序寄存器:8 bit,此寄存器值表示NSS變化與SCK下降沿間隔時間,單位:10 ns(系統(tǒng)時鐘為100 MHz,因此最小間隔為10 ns)。
4 SPI Master模塊功能介紹
(1)SPI循環(huán)發(fā)送次數(shù)可變,范圍:1~32 767;(2)SPI數(shù)據(jù)發(fā)送長度可變,范圍:1~65 535,單位:B;(3)SPI循環(huán)發(fā)送間隔可變,范圍:(1個SCK周期)~(65 536×10 ns),實現(xiàn)了連續(xù)發(fā)送,即一次SPI發(fā)送結(jié)束后下一SCK時鐘立即啟動下次SPI發(fā)送;(4)MOSI與SCK時序關(guān)系可變,NSS與SCK時序關(guān)系可變,SPI總線為下降沿發(fā)送,上升沿接收,故MOSI、NSS在SCK下降沿后半個周期可調(diào)即可。
SPI功能流程如圖3所示,F(xiàn)PGA上電復(fù)位后不斷檢測SPI_start信號,當SPI_start信號有效時(高電平)啟動SPI發(fā)送,讀取BRAM中的配置參數(shù),進行譯碼,依據(jù)譯碼后數(shù)據(jù)長度值讀取BRAM中數(shù)據(jù),按照SPI協(xié)議發(fā)送數(shù)據(jù);完成一次SPI發(fā)送后判斷是否為循環(huán)發(fā)送,若為循環(huán)發(fā)送則啟動下一次SPI發(fā)送,直到發(fā)送次數(shù)等于循環(huán)發(fā)送次數(shù)寄存器值,其中發(fā)送間隔由循環(huán)發(fā)送間隔寄存器值決定。

4.1 單次發(fā)送(正常時序)
SPI Master控制器檢測到SPI_start信號有效,即控制Bram接口讀取配置參數(shù),經(jīng)譯碼后若循環(huán)發(fā)送標識寄存器為低電平,則配合發(fā)送長度寄存器讀取BRAM中數(shù)據(jù),并進行發(fā)送。
4.2 單次發(fā)送(異常時序)
MOSI異常時序:正常情況下MOSI在SCK下降沿變化,此設(shè)計采用一帶抽頭的序列寄存器產(chǎn)生異常時序,如圖4。

每增加一個觸發(fā)器,延時增加一個系統(tǒng)時鐘[6],多路開關(guān)依據(jù)MOSI時序寄存器中值選擇相應(yīng)觸發(fā)器輸出,產(chǎn)生異常時序,舉例說明如圖5。

圖5中sys_clk為系統(tǒng)時鐘頻率100 MHz,NSS為使能信號;MOSI為串行輸出信號;當SCK頻率寄存器為10時,SPI串行時鐘SCK周期=(SCK頻率寄存器)×10 ns=100 ns,即SCK頻率為10 MHz;當MOSI時序寄存器值為4時,MOSI在SCK下降沿后4個sys_clk開始變化。
4.3 循環(huán)發(fā)送(時序正常)
每完成一次SPI發(fā)送,發(fā)送次數(shù)計數(shù)器加1,當發(fā)送次數(shù)計數(shù)器中的值與循環(huán)發(fā)送次數(shù)寄存器中值相等時,完成循環(huán)發(fā)送。發(fā)送次數(shù)由循環(huán)發(fā)送次數(shù)寄存器值決定,循環(huán)發(fā)送間隔由發(fā)送間隔計數(shù)器決定。
4.4 循環(huán)發(fā)送(時序異常)
類似循環(huán)發(fā)送(正常時序),異常時序產(chǎn)生類似單次發(fā)送(異常時序)。
實現(xiàn)的目標器件是Xilinx的Virtex2 pro開發(fā)板。本文已應(yīng)用于中國科學(xué)院光電研究院測試平臺中,實現(xiàn)了SPI接口以及與其功能相關(guān)的的測試。
與同類SPI Master相比,發(fā)送間隔可變、精度高,最小間隔僅為1個SCK時鐘周期;發(fā)送時序可變,精度高,為1個系統(tǒng)時鐘周期;基本滿足正常、異常以及強度等測試要求。
參考文獻
[1] 唐恒標,馮建華,馮建科.基于測試系統(tǒng)的FPGA邏輯資源的測試[J],微電子學(xué),2006(6).
[2] (美)伯杰龍(Bergeron,J.)著,編寫測試平臺:HDL模型的功能驗證(第二版)[M],張春等譯.北京:電子工業(yè)出版社,2006.
[3] 孫曉云.接口與通信技術(shù)原理與應(yīng)用[M].北京:中國電力出版社,2007.
[4] 李云松.Xilinx FPGA設(shè)計基礎(chǔ)[M].西安:西安電子科技大學(xué)出版社,2008.
[5] 薛小剛,葛毅敏.Xilinx ISE 9.X FPGA/CPLD設(shè)計指南[M]. 北京:人民郵電出版社,2007.
[6] 夏宇文.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2008.

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在數(shù)字化浪潮席卷全球的今天,F(xiàn)PGA技術(shù)正成為驅(qū)動創(chuàng)新的核心引擎。2025年8月21日,深圳將迎來一場聚焦FPGA技術(shù)與產(chǎn)業(yè)應(yīng)用的盛會——2025安路科技FPGA技術(shù)沙龍。本次沙龍以“定制未來 共建生態(tài)”為主題,匯聚行業(yè)...

關(guān)鍵字: FPGA 核心板 開發(fā)板

在現(xiàn)代電子系統(tǒng)中,現(xiàn)場可編程門陣列(FPGA)憑借其開發(fā)時間短、成本效益高以及靈活的現(xiàn)場重配置與升級等諸多優(yōu)點,被廣泛應(yīng)用于各種產(chǎn)品領(lǐng)域。從通信設(shè)備到工業(yè)控制,從汽車電子到航空航天,F(xiàn)PGA 的身影無處不在。為了充分發(fā)揮...

關(guān)鍵字: 可編程門陣列 FPGA 數(shù)字電源

2025年8月4日 – 提供超豐富半導(dǎo)體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿(mào)澤電子 (Mouser Electronics) 即日起開售Altera?的Agilex? 3 FPGA C系列開發(fā)套件。此開...

關(guān)鍵字: FPGA 邊緣計算 嵌入式應(yīng)用

內(nèi)窺鏡泛指經(jīng)自然腔道或人工孔道進入體內(nèi),并對體內(nèi)器官或結(jié)構(gòu)進行直接觀察和對疾病進行診斷的醫(yī)療設(shè)備,一般由光學(xué)鏡頭、冷光源、光導(dǎo)纖維、圖像傳感器以及機械裝置等構(gòu)成。文章介紹了一款基于兩片圖像傳感器和FPGA組成的微型3D內(nèi)...

關(guān)鍵字: 微創(chuàng) 3D內(nèi)窺鏡 OV6946 FPGA

運用單片機和FPGA芯片作為主控制器件 , 單片機接收從PC機上傳過來的顯示內(nèi)容和顯示控制命令 , 通過命令解釋和數(shù)據(jù)轉(zhuǎn)換 , 生成LED顯示屏所需要的數(shù)據(jù)信號和同步的控制信號— 數(shù)據(jù)、時鐘、行同步和面同步 。FPGA芯...

關(guān)鍵字: 單片機 FPGA LED顯示屏

在當今數(shù)字化時代,汽車不再僅僅是一種交通工具,更是一個移動的智能空間。隨著人們對汽車電子設(shè)備依賴程度的不斷提高,車內(nèi) USB 接口的重要性也日益凸顯。從最初單純?yōu)槭謾C充電,到如今支持數(shù)據(jù)傳輸、連接各種智能設(shè)備,USB 接...

關(guān)鍵字: 接口 數(shù)據(jù)傳輸 汽車供電

根據(jù)Semico Research的預(yù)測,到2025年RISC-V芯片出貨量將達到624億顆,覆蓋計算、消費電子和工業(yè)等領(lǐng)域。而在這其中,RISC-V MCU是整個RISC-V生態(tài)的基本盤,以高質(zhì)量、應(yīng)用驅(qū)動的解決方案為...

關(guān)鍵字: 青稞 RISC-V 沁恒 接口 MCU

在異構(gòu)計算系統(tǒng)中,ARM與FPGA的協(xié)同工作已成為高性能計算的關(guān)鍵架構(gòu)。本文基于FSPI(Fast Serial Peripheral Interface)四線模式,在150MHz時鐘頻率下實現(xiàn)10.5MB/s的可靠數(shù)據(jù)...

關(guān)鍵字: ARM FPGA FSPI

在全球FPGA市場被Xilinx(AMD)與Intel壟斷的格局下,國產(chǎn)FPGA廠商高云半導(dǎo)體通過構(gòu)建自主IP核生態(tài)與智能時序約束引擎,走出差異化高端化路徑。本文深入解析高云半導(dǎo)體FPGA工具鏈的兩大核心技術(shù)——全棧IP...

關(guān)鍵字: FPGA 高云半導(dǎo)體

2025年6月12日,由安路科技主辦的2025 FPGA技術(shù)沙龍在南京正式召開,深圳市米爾電子有限公司(簡稱:米爾電子)作為國產(chǎn)FPGA的代表企業(yè)出席此次活動。米爾電子發(fā)表演講,并展出米爾基于安路飛龍派的核心板和解決方案...

關(guān)鍵字: FPGA 核心板 開發(fā)板
關(guān)閉