999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NiosII的智能多接口片上系統設計

2012-09-07 02:52:56張興堂王偉強
電子技術應用 2012年7期
關鍵詞:系統設計

張興堂,高 勇,王偉強

(1.江蘇自動化研究所,江蘇 連云港 222006;2.空軍駐揚州地區軍代室,江蘇 揚州 225000)

隨著超大規模片上系統需求的日益增多,基于傳統IC芯片的微電子應用系統設計技術正在轉向基于知識產權IP(Intellectual Property)核的片上系統技術發展[1]。因此,基于資源IP核的復用設計方式已開始逐漸成為國內外微電子系統設計的一項支撐技術。從應用功能角度劃分IP核有三大類[2]:微處理器IP核(如8位8051核、32位NiosII、Microblaze核等)、各種接口IP核(如SDRAM控制器、PCI總線接口、CAN總線接口、串行總線接口IP核等)和專用算法IP核(圖形編解碼H.264、加密核等)。使用IP核復用技術,將IP集成到FPGA芯片上,可縮小PCB板體積,降低功耗;還可以根據需要進行功能的升級、擴充和裁減[3]。本文以Altera公司的NiosII為主處理器并集成PCI接口、串行接口、CAN接口、網絡接口設計為例,說明片上系統的設計方法。

1 設計原理

采用片上系統設計的智能多接口模塊一般可以不需要外部主處理器操作系統的干預,其典型結構如圖1所示。在工作時,片上系統收到的信號經過本板上Nios II處理器處理轉換后,即可將數據信號送出或做其他處理。信號轉換、處理工作全部由片上系統完成,不增加外主處理器操作系統的軟件開銷,因而對整個系統的負擔更小。也可以要通過接入的PCI等系統總線,以中斷提請等方式向外部主處理器提請訪問,可完成與外主處理器的數據交換[4]。

片外集成的CAN、串行422、PCI、網絡等總線外部適配電路、收發器電路等采用了成熟的設計,本文不再贅述。重點介紹片上系統的串口IP軟核設計、總線轉換橋接邏輯設計以及基于Nios II片上系統集成設計。

2 硬件設計

2.1 UART 的IP核設計

串行接口IP核內部邏輯結構如圖2所示。主要包括總線接口、數據發送緩沖、發送移位寄存器、幀產生、奇偶校驗、數據接收緩沖、接收移位寄存器、波特率生成、中斷產生等部分功能實現。

在開源OpenCores組織的網站上,可以獲取大量共享IP核,但是大多數是未被驗證的,或者由于是不同人撰寫的,其代碼風格也不盡相同。其接口信號定義為標準Wishbone總線形式,Wishbone著重定義IP核的接口信號和總線周期標準來實現IP核的重用。通過對IP軟核代碼的分析,在原代碼的基礎上可通過修改IP核的部分邏輯功能(如增加內嵌數據收發FIFO深度),優化部分接口邏輯;通過對異步信號同步采樣一次,可以去干擾,消除亞穩態以及虛假的Glitch;可通過增加復位狀態寄存器等實現優化設計。最終完成基于Wishbone總線的IP軟核設計。下面以串行接口IP核設計為例說明,其他類型的IP核也可以通過類似方法獲得。串行接口IP設計是以異步串行控制器16C550為原型的。

2.1.1 波特率發生器設計

波特率發生器通過兩個8位的分頻寄存器實現,它提供發送數據和接收數據的基準時鐘。波特率發生器產生的時鐘是串行數據波特率的16倍。上電復位后兩個分頻寄存器都為00H,不使能所有的I/O操作。

2.1.2 數據收發

數據發送主要由線控制寄存器、計數器、FIFO控制器、發送FIFO、發送移位寄存器等實現。在波特率設置好后,計數器統計幀數據的位數,確保發送的幀數據包括起始位、有效數據位、奇偶校驗位、停止位。發送FIFO可以暫存總線接口發送過來的數據,數據從發送FIFO移入到輸出移位寄存器,每16個時鐘時間向外發送一位數據,先發送起始位,有效數據從移位寄存器的高位逐位移出,最后輸出奇偶檢驗位和終止位。當發送FIFO內的數據低于FIFO設置觸發深度時,會觸發發送FIFO空中斷。

數據接收由線控制寄存器、計數器、接收FIFO和輸入移位寄存器等組成。接收數據的線控制寄存器、計數器功能同發送模塊。接收器始終監視著串行輸入端,將8位串行數據逐位接收進來。數據接收后會通過移位寄存器暫存在接收FIFO中,FIFO深度可支持1 B、32 B、64 B、128 B等。

2.1.3 中斷設計

串行接口IP核中包含一個8位的中斷使能寄存器(IER)和一個8位的中斷識別寄存器(IIR)。中斷使能寄存器可以使能5種中斷源,分別是:接收線狀態中斷、發送線狀態中斷、時間溢出中斷、發送寄存器空中斷、Modem狀態中斷等,共4個優先級。上電復位時默認狀態為全部中斷屏蔽。上電復位時IIR為C1H,通過讀取IIR數值可獲取相應的4路中斷狀態信息。

2.2 總線轉換橋接邏輯設計

為了實現Wishbone和Avalon總線協議之間的協議轉換,根據兩種片上總線的特性,通過狀態機的使用來實現總線協議的轉換,并使用軟件仿真的方法建立模型來驗證總線轉換橋的可用性。 Wishbone到Avalon總線轉換橋的總體組成原理如圖3所示。

Wishbone到Avalon總線轉換橋的基本功能是使得符合Wishbone總線體系結構的IP核可以在采用Avalon總線的NiosII固核處理器片上系統中集成,從而實現對定制外設的訪問。接口支持32位總線操作。總線轉換橋由相對獨立的Avalon主從端口單元和Wishbone主從端口單元組成,每個單元都有一套完整的功能來支持Avalon總線和Wishbone端口上所掛載的IP核之間的交易,讀寫數據實行分開存儲,由配置和狀態寄存器控制操作模式和數據的輸入輸出。Avalon總線接口邏輯與Wishbone接口邏輯兩側都包含本地狀態機及其他控制邏輯,并且總線橋接口邏輯還包括地址譯碼、命令譯碼、接口控制狀態機、數據輸出MUX、奇偶校驗輸出、地址溢出檢查等功能模塊。

2.3 片上系統集成設計

基于NiosII固核處理器的片上系統集成是在SoPC Builder環境下完成的。片上系統集成主要完成對片上系統的定制、片上系統的資源分配、總線交換操作、中斷處理等幾個點關鍵技術點。

2.3.1 片上系統定制設計

片上系統的定制設計主要是完成片上系統集成所需要的處理器IP和外設IP的選型,是集成設計的第一步,設置系統主頻,同時可選配指令、數據Cache大小、外部數據指令、硬件乘法器、流水線支持、浮點運算支持等特性,并設置NiosII的Cache和CPU直接相連的存儲器。外設IP主要包括PCI總線接口IP、外部SRAM接口IP、外部Flash接口IP、外部GPIO接口IP、外部網絡接口IP、自定制的基于OpenCore的串行接口IP核、CAN總線接口IP軟核等。

2.3.2 片上系統資源分配

SoPC為各IP自動分配了一個默認地址。考慮到資源有效利用,還需要對系統資源進行重配置,主要包括:對Boot Loader的存儲器選擇和設置Boot Loader在存儲器中的偏移;存放異常向量的存儲器選擇及其偏移量;各外設在Avalon總線上的偏移地址、中斷號的分配;PCI總線對片上Avalon總線上設備的Memnry或I/O的空間以及地址映射;DMA傳輸配置;消息寄存器(Mailbox)雙口RAM的使用等。具體分配如下:

(1)考慮到可以通過PCI到Avalon總線的地址映射,從PCI通過BAR端口直接訪問兩路UART、CAN、GPIO等設備,根據各接口IP地址特性,其他外設在Avalon端地址分配不沖突的前提下,有效分配Avalon地址資源,并可以在PCI端直接使用BAR2/BAR3以及Memory或I/O訪問此類外設。

(2)可以通過Auto Bass Address操作,解決外設的地址分配沖突問題。通過調整其他外設地址避免與Flash地址的沖突。

(3)可通過手動方式修改各個外設的中斷號,也可以通過Auto Assign IRQs操作,自動分配中斷號(最低為0,最高31)。

2.3.3 總線數據交換操作

PCI總線與Avalon總線實現互相訪問,須先確定PCI核的資源配置,然后根據資源配置選擇總線數據操作方式。從PCI總線方向看PCI軟核主要有以下幾個部分:寄存器組、BAR0~BAR3、DMAC、PCI訪問端口。帶有PCI核的整體架構如圖4所示。

對于含PCI總線接口IP的片上系統總線操作,可以分為DMA方式和非DMA方式。非DMA方式即PCI總線通過PCI核的BAR空間訪問Avalon總線設備,而不經過DAMC的控制。非DMA方式的操作共分為4類,其中數據類操作兩類:PCI總線讀取Avalon總線設備的數據(支持連續數據)、PCI總線將數據寫入Avalon總線設備(支持連續數據);配置類操作兩類:PCI總線讀取Avalon總線設備的寄存器、PCI總線寫入Avalon總線設備的寄存器。數據類操作與配置類操作沒有本質上的區別,只是數據類操作支持連續數據操作,數據通道是雙口RAM,而配置類操作只支持單次操作,數據通道是MailBox組。PCI核的寄存器組包含兩類MailBox寄存器組:P-A MBR和A-P MBR,每類MailBox組含8個32位寄存器。

3 軟件設計

NiosII EDS(嵌入式開發包)基于開放式、可擴展Eclipse IDE的工程以及Eclipse C/C++開發工具提供了統一的開發平臺,適用于所有NiosII處理器。 NiosII EDS為基于NiosII的系統自動生成板級支持包(BSP),包括硬件抽象層(HAL)、可選的RTOS以及設備驅動。BSP提供了C/C++運行環境,可以避免與硬件直接打交道。所有軟件開發任務都可以在Nios II IDE下完成,包括編輯、編譯和程序調試。

基于NiosII固核處理器的片上系統的BSP(板級支持包)設計主要以開發板源碼為基礎進行修改移植。系統通過bootloader進行引導,采用Altera的集成開發環境NiosII 7.2 IDE進行操作系統μC/OSII的開發。在開發過程中采用軟件模塊化、通用化的編程思想進行設計,具體實現的驅動包括NiosII的驅動、PCI驅動、串行驅動、CAN接口驅動等。首先創建IDE的管理工程,然后選擇目標硬件,IDE會建立系統庫,根據向導就可以創建一個NiosII C/C++應用工程。最后是建立C的源文件和頭文件,對C源文件和頭文件編輯好后可對工程進行編譯,編譯中出的錯誤與警告IDE都會給出提示。

4 仿真與驗證

為了驗證串行接口IP核設計功能,需進行仿真測試與驗證,其功能仿真如圖5所示。

在Quartues II環境下完成該IP核編輯、編譯、綜合布局布線,并完成IP核相應的Testbench測試源代碼的編輯、編譯,在Model Sim環境下進行功能與時序仿真。對IP核的測試可以分別對Wishbone總線接口核和內部功能核兩部分進行測試來完成。首先要對接口核部分測試,以確保能夠正常進行讀寫操作,然后對功能核的每個功能模塊和寄存器進行測試驗證。結果證明其IP功能齊備,符合設計要求。

本文詳細介紹了基于NiosII處理器的智能多接口片上系統設計與實現,采用Altera公司Cyclonell系列FPGA芯片EP2C35F672I8實現設計時,占用芯片資源小于50%。

隨著超大規模片上系統的設計需求不斷增加,其對IP核的性能、功能、可重用性以及靈活性等方面的要求將越來越高,而目前Xilinx、Altera等公司都已經推出了工作頻率更高、布線時延更小、容量更大的新型FPGA芯片。可以將處理器核、總線接口核和專用算法核等集成在頻率更高、性能更強大的FPGA芯片上。

[1]夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,2003.

[2]牛風舉,劉元成,朱明成.基于IP復用的數字IC設計技術[M].北京:電子工業出版社,2003.

[3]劉明業,蔣敬奇,刁嵐松,等譯.硬件描述語言Verilog[M].北京:清華大學出版社,2002.

[4]CHANG H,COOKE L,HUNTETE M.Surviving the SoC platform baseddesign[M].USA:Kluwer Acedemic Publisher.2005.

[5]蔡偉剛.NiosII軟件架構解析[M].西安:西安電子科技大學出版社,2007.

[6]楊強號.基于EDK的FPGA嵌入式系統開發[M].北京:機械工業出版社,2008.

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 日韩视频免费| 国产美女丝袜高潮| 真人高潮娇喘嗯啊在线观看| 国产精品国产三级国产专业不| 亚洲第一天堂无码专区| 精品夜恋影院亚洲欧洲| 一级毛片免费高清视频| 人妻丰满熟妇啪啪| 一级毛片在线直接观看| 日韩av手机在线| 日韩精品无码一级毛片免费| 最新国产你懂的在线网址| 国产一区二区影院| 啊嗯不日本网站| 久久毛片免费基地| 精品视频在线观看你懂的一区 | 国产在线精彩视频二区| 久久精品国产免费观看频道| 亚洲二区视频| 怡春院欧美一区二区三区免费| 久久精品人妻中文视频| a级毛片在线免费观看| 亚洲av无码人妻| 欧美日韩国产精品va| 欧美国产精品不卡在线观看| 国产精品美人久久久久久AV| 亚洲精品无码日韩国产不卡| 国产xx在线观看| 怡红院美国分院一区二区| 中文字幕永久在线看| 欧美啪啪视频免码| 毛片视频网| 99久久精品免费看国产电影| 91精品视频播放| 欧美一道本| 在线精品自拍| 人妻丰满熟妇av五码区| 毛片在线播放a| 国模私拍一区二区三区| 狠狠躁天天躁夜夜躁婷婷| 久久香蕉国产线看观看亚洲片| 国产日韩丝袜一二三区| 国内精自线i品一区202| 亚洲AⅤ无码国产精品| 国产农村1级毛片| 少妇精品网站| Aⅴ无码专区在线观看| 色综合国产| 亚洲天堂.com| 日韩欧美国产综合| 2019国产在线| 成人精品亚洲| 毛片免费高清免费| 波多野结衣在线se| 狠狠亚洲五月天| 亚洲综合久久成人AV| 一级全黄毛片| 久久狠狠色噜噜狠狠狠狠97视色 | 手机在线看片不卡中文字幕| 91蝌蚪视频在线观看| 无码免费视频| 久草网视频在线| 国产福利在线观看精品| 国产精品99在线观看| 国产高清不卡视频| 最新亚洲人成无码网站欣赏网| 欧美日本视频在线观看| 日韩二区三区| 91精品国产自产在线老师啪l| 不卡网亚洲无码| 97超爽成人免费视频在线播放| 欧美日韩精品一区二区在线线| 国产精品va免费视频| 91成人在线观看| 999国内精品久久免费视频| yjizz视频最新网站在线| 毛片手机在线看| 97视频精品全国免费观看 | 一级毛片在线播放| 美臀人妻中出中文字幕在线| 欧美在线综合视频| 午夜激情婷婷|