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

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

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

解析MIPS內(nèi)核的HDTV-SoC平臺(tái)總線接口模塊

電子工程師 ? 來(lái)源:《計(jì)算機(jī)工程》 ? 作者:周波,孫軍 ? 2021-04-07 09:31 ? 次閱讀

“介紹了使用MIPS32TM4KcTM處理器作為CPU內(nèi)核的高清晰度電視(HDTV)SoC平臺(tái),著重提出了該平臺(tái)上系統(tǒng)總線接口(HIF)模塊的設(shè)計(jì)方案。并通過(guò)仿真和綜合實(shí)驗(yàn),驗(yàn)證了該模塊能夠達(dá)到系統(tǒng)總體設(shè)計(jì)的要求。”

在系統(tǒng)級(jí)芯片(SoC)的設(shè)計(jì)當(dāng)中,MIPS的RISC處理器是一種應(yīng)用非常廣泛的嵌入式CPU,它具有高性能、低功耗的特點(diǎn),可以很方便地集成到一個(gè)完整的片上系統(tǒng)之中,使開(kāi)發(fā)者能夠?qū)W⒂谟脩鬒P模塊的設(shè)計(jì)。MIPS架構(gòu)的處理器占據(jù)了數(shù)字機(jī)頂盒微處理器和解碼器用CPU架構(gòu)市場(chǎng)領(lǐng)域的領(lǐng)先地位。在MIPS家族的產(chǎn)品當(dāng)中,32位的4KcTM處理器是具有代表性的一款,它采用了MIPS32的CPU架構(gòu),支持MIPS IITM指令集。在本文介紹的SoC系統(tǒng)設(shè)計(jì)中,就采用了MIPS32TM4KcTM處理器作為芯片的CPU內(nèi)核。

在當(dāng)前的數(shù)字消費(fèi)電子市場(chǎng)領(lǐng)域,基于SoC平臺(tái)的HDTV芯片是所有數(shù)字電視接收及播放設(shè)備的核心器件。SoC芯片具體到HDTV解碼系統(tǒng),就是把MPEG-2解復(fù)用(DeMux)、音視頻解碼(AVD)、視頻格式轉(zhuǎn)換(VTP)、畫(huà)面后處理(OSD)以及接口I/O控制等功能模塊都集成在一塊芯片上。而要把眾多功能復(fù)雜的系統(tǒng)控制模塊和用戶IP模塊集成到一個(gè)芯片上并使其能夠協(xié)調(diào)工作,就必須設(shè)計(jì)好各個(gè)模塊之間的接口。本文針對(duì)高清數(shù)字電視SoC平臺(tái)的項(xiàng)目,提出了系統(tǒng)總線接口模塊(Host Bus Interface,HIF)的設(shè)計(jì)方案,并進(jìn)行了仿真實(shí)驗(yàn)。

HIF模塊在系統(tǒng)中的主要功能

HDTV-SoC平臺(tái)是一個(gè)功能強(qiáng)大、結(jié)構(gòu)復(fù)雜的系統(tǒng),本文重點(diǎn)介紹了SoC架構(gòu)中片上總線控制器的設(shè)計(jì)。片上總線能夠提供針對(duì)特定應(yīng)用的靈活多樣的集成方法,它需要結(jié)構(gòu)簡(jiǎn)單,速度快捷,在單芯片中實(shí)現(xiàn)多資源互聯(lián)。HDTV-SoC系統(tǒng)的總線結(jié)構(gòu)如圖1所示。它分為3個(gè)層次,即與MIPS處理器接口的Ec總線(EcInterface)、系統(tǒng)總線和外圍總線。

由圖1可見(jiàn),HIF模塊在系統(tǒng)中所處的位置是十分關(guān)鍵的,它是系統(tǒng)總線(Host Bus)和各個(gè)IP模塊以及周邊I/O模塊之間的接口單元,即系統(tǒng)總線和外圍總線之間的橋梁,在系統(tǒng)中起著“承前啟后”的作用,是CPU和外部模塊之間數(shù)據(jù)交換的重要通道。具體而言,HIF模塊主要完成3大功能,分別為外部模塊W/R寄存器的設(shè)置和狀態(tài)寄存器的讀取、外部模塊雙口RAM的讀寫(xiě)控制、外部模塊中斷的控制和管理。

o4YBAGBtCTqAPeG0AABwkiJ7rCI650.png

電路功能模塊設(shè)計(jì)

由上文所述可知,HIF電路設(shè)計(jì)主要分為3個(gè)模塊:寄存器讀寫(xiě)模塊,雙口RAM讀寫(xiě)模塊和中斷處理模塊。

寄存器讀寫(xiě)模塊

CPU和外部模塊之間進(jìn)行數(shù)據(jù)交互的一個(gè)重要方式就是通過(guò)寄存器的讀寫(xiě),實(shí)現(xiàn)對(duì)外部模塊功能的控制和初始化。系統(tǒng)總線按照規(guī)定的時(shí)序讀寫(xiě)HIF模塊內(nèi)部的寄存器資源,這些寄存器的每個(gè)比特位以連線的方式直接與外部模塊互連。HIF模塊在接收到系統(tǒng)總線過(guò)來(lái)的地址和數(shù)據(jù)之后,首先進(jìn)行地址譯碼,選擇相應(yīng)的寄存器,再將數(shù)據(jù)寫(xiě)入。圖2為該模塊的邏輯框圖。

MIPS的4Kc處理器支持猝發(fā)(burst)操作,所謂猝發(fā)操作是指在給出首地址之后,可以連續(xù)進(jìn)行多個(gè)讀寫(xiě)操作,而無(wú)須再給出每次操作的相應(yīng)地址。在總線上,一個(gè)猝發(fā)指令與單個(gè)操作指令一樣,只占用一個(gè)時(shí)鐘周期。HIF模塊在處理猝發(fā)操作時(shí),將一個(gè)猝發(fā)指令轉(zhuǎn)換為4個(gè)單周期指令,在轉(zhuǎn)換之后,要保證從總線上過(guò)來(lái)的寫(xiě)數(shù)據(jù)與其相應(yīng)的指令同步。

這樣在猝發(fā)操作時(shí),從寄存器組的角度看到的寫(xiě)數(shù)據(jù)與指令是同時(shí)發(fā)生的,盡管實(shí)際情況并不是這樣。而要實(shí)現(xiàn)這種猝發(fā)操作,就必須引入一種FIFO機(jī)制。FIFO的深度為4,這與4Kc處理器所支持的猝發(fā)長(zhǎng)度是一致的。在系統(tǒng)復(fù)位之后FIFO清空,可以隨時(shí)接收總線上的猝發(fā)數(shù)據(jù)。在系統(tǒng)正常工作時(shí),F(xiàn)IFO模塊分別通過(guò)“in”和“out”指針來(lái)指示輸入和輸出的數(shù)據(jù),以跟蹤FIFO的使用情況。FIFO還需要用到一個(gè)“bypass”信號(hào)來(lái)確定是否旁路該模塊,這發(fā)生在單個(gè)指令操作的情況下(bypass=‘1’),這時(shí)數(shù)據(jù)是繞過(guò)FIFO而直接通向寄存器的。FIFO機(jī)制的邏輯框圖見(jiàn)圖3。

雙口RAM讀寫(xiě)模塊

在與系統(tǒng)總線的接口邏輯方面,RAM讀寫(xiě)模塊與寄存器讀寫(xiě)模塊是類似的,這里不再贅述。不同之處在于與外部模塊的接口邏輯,寄存器讀寫(xiě)模塊是采用直接連線的方式,而RAM讀寫(xiě)模塊則必須滿足相應(yīng)的雙口RAM的接口時(shí)序。在本設(shè)計(jì)中,選用了SMIC的0.18μm庫(kù)的雙口RAM單元作為模型。該模型的接口時(shí)序如圖4所示,包括了讀時(shí)序和寫(xiě)時(shí)序兩種情況。

中斷控制模塊

中斷控制模塊負(fù)責(zé)處理由DeMux、VD、GPIO等外部模塊的中斷源所發(fā)出的中斷,對(duì)于系統(tǒng)來(lái)說(shuō),如何使產(chǎn)生的中斷盡快得到響應(yīng)是一個(gè)關(guān)鍵的問(wèn)題。在圖1中可以看到MIPS4Kc處理器所提供的中斷引腳的連接情況,有關(guān)其引腳的說(shuō)明如表1所示[1]。

表1 MIPS4Kc處理器中斷引腳描述表

習(xí)慣將SI_TimerInt信號(hào)接到SI_Int[5]引腳,就像圖1中所顯示的那樣。這樣4Kc處理器的外部中斷引腳就剩下5根,即SI_Int[4:0]。在本設(shè)計(jì)中,將系統(tǒng)外部中斷分為5級(jí),按照SI_Int[0]到SI_Int[4]的順序優(yōu)先級(jí)從高到低排列。針對(duì)每個(gè)外部模塊,也將其所有的中斷源分為5級(jí),反映到每個(gè)模塊的輸出是一個(gè)5比特的寄存器XInt[4:0],同樣,按照XInt[0]到XInt[5]的順序中斷優(yōu)先級(jí)從高到低排列。假設(shè)系統(tǒng)有N個(gè)外部模塊,則各個(gè)模塊輸出的XInt之間相或即得到SI_Int的輸入,這些邏輯在TopInt模塊中實(shí)現(xiàn),如圖5所示。

需要說(shuō)明的是,TopInt模塊本身也被當(dāng)作系統(tǒng)的一個(gè)外部模塊,系統(tǒng)可以對(duì)其進(jìn)行與其它模塊相同的寄存器讀寫(xiě)操作。這樣CPU在處理外部中斷時(shí),就可以通過(guò)讀取XIntn寄存器的內(nèi)容,追溯中斷的產(chǎn)生源。另外,在每一個(gè)外部模塊內(nèi)部,設(shè)置5個(gè)32位的中斷請(qǐng)求寄存器IRQREG0~IRQREG4和5個(gè)32位的中斷屏蔽寄存器MSKREG0~MSKREG4。

當(dāng)MSKREGn寄存器中的某個(gè)比特位被置“1”時(shí),則IRQREGn寄存器中相應(yīng)比特位的中斷被屏蔽。在每一個(gè)IRQREGn寄存器當(dāng)中,32個(gè)比特位之間相或即得到該模塊相應(yīng)XInt寄存器中的第n比特位的值。由此也可以看出,按照IRQREG0到IRQREG4的順序,中斷優(yōu)先級(jí)從高到低。它們之間的邏輯關(guān)系如圖6所示。

另外,為了便于CPU的訪問(wèn),所有這些寄存器在模塊中都有編址。這樣對(duì)于任意一個(gè)中斷,最多通過(guò)兩次查詢CPU就可以獲知產(chǎn)生該中斷的中斷源。

仿真與綜合

設(shè)計(jì)的仿真工作是分兩部分進(jìn)行的。各模塊先單獨(dú)仿真,待波形正確后再各模塊聯(lián)調(diào)。在編制TESTBENCH時(shí),分別在不同的文件當(dāng)中處理不同的工作情況。具體到HIF模塊,仿真主要完成如下方面的驗(yàn)證:寄存器的寫(xiě)入和讀取、雙口RAM的寫(xiě)入和讀取以及中斷的產(chǎn)生和獲取。在設(shè)計(jì)中,采用VHDL語(yǔ)言編寫(xiě)代碼,以及Mentor公司的ModelSimSE5.7工具進(jìn)行編譯和仿真。在仿真時(shí),SMIC庫(kù)提供的雙口RAM模型作為外部模塊掛接在系統(tǒng)中,模型的接口時(shí)序與圖4中所示的完全一致。圖7為節(jié)選的HIF模塊仿真波形。

由于整個(gè)SoC系統(tǒng)的設(shè)計(jì)工作尚處于FPGA驗(yàn)證階段,因此在綜合時(shí)選用Xilinx公司的ISE6.1軟件中自帶的XST綜合工具,F(xiàn)PGA器件選擇Virtex-E系列的XCV2000E。綜合后的結(jié)果報(bào)告如表2所示。

表2 綜合結(jié)果報(bào)告表

總結(jié)

由仿真和綜合的實(shí)驗(yàn)結(jié)果可以看出,HIF模塊的設(shè)計(jì)可以滿足系統(tǒng)在功能上的要求,而且綜合后的模塊所占用的FPGA的面積和資源的比例都很小,有些甚至可以忽略不計(jì),因而不會(huì)影響到系統(tǒng)中其它模塊的設(shè)計(jì)與實(shí)現(xiàn)。而綜合后的主工作頻率為116.959MHz,完全滿足設(shè)計(jì)要求。

編輯:jq

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

    關(guān)注

    68

    文章

    19103

    瀏覽量

    228825
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1364

    瀏覽量

    114445
  • fifo
    +關(guān)注

    關(guān)注

    3

    文章

    386

    瀏覽量

    43496
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1189

    瀏覽量

    51839
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    深度解析linux時(shí)鐘子系統(tǒng)

    linux內(nèi)核中實(shí)現(xiàn)了一個(gè)CLK子系統(tǒng),用于對(duì)上層提供各模塊(例如需要時(shí)鐘信號(hào)的外設(shè),USB等)的時(shí)鐘驅(qū)動(dòng)接口,對(duì)下層提供具體SOC的時(shí)鐘操作細(xì)節(jié)。
    的頭像 發(fā)表于 09-29 16:46 ?249次閱讀
    深度<b class='flag-5'>解析</b>linux時(shí)鐘子系統(tǒng)

    自動(dòng)售貨機(jī)MDB總線周邊設(shè)備地址中文解析(三)

    自動(dòng)售貨機(jī)MDB協(xié)議中文解析(三)MDB總線周邊設(shè)備地址
    發(fā)表于 09-09 10:43 ?0次下載

    CAN總線接口類型

    CAN總線(Controller Area Network)是一種基于廣播的串行通信協(xié)議,廣泛用于連接分布式系統(tǒng)中的各個(gè)設(shè)備,實(shí)現(xiàn)它們之間的數(shù)據(jù)交換和控制。CAN總線接口的定義涵蓋了物理層和數(shù)據(jù)鏈路層的多個(gè)方面,包括
    的頭像 發(fā)表于 09-03 14:13 ?1147次閱讀

    控制模塊通訊總線關(guān)閉怎么修

    控制模塊通訊總線關(guān)閉是一個(gè)涉及多個(gè)可能原因和復(fù)雜修復(fù)步驟的問(wèn)題。 一、問(wèn)題概述 控制模塊通訊總線關(guān)閉通常指的是車輛或其他系統(tǒng)中的控制模塊之間
    的頭像 發(fā)表于 08-29 15:44 ?553次閱讀

    科普小課堂|不同版本USB接口詳細(xì)解析

    實(shí)現(xiàn)USB到以太網(wǎng)或USB到CAN總線的橋接,極大地豐富了其應(yīng)用場(chǎng)景。下面我們將深入探討各類常用USB規(guī)范的特性,解析不同形態(tài)的USB物理接口,助力各位小伙伴全面掌握US
    的頭像 發(fā)表于 06-27 09:40 ?5047次閱讀
    科普小課堂|不同版本USB<b class='flag-5'>接口</b>詳細(xì)<b class='flag-5'>解析</b>

    can總線隔離模塊的作用

    CAN總線隔離模塊是一種用于保護(hù)CAN總線通信系統(tǒng)的電子設(shè)備,它通過(guò)在CAN總線和CAN節(jié)點(diǎn)之間增加一層隔離層,來(lái)防止電氣干擾、電壓沖擊和故障傳播等問(wèn)題,從而確保CAN
    的頭像 發(fā)表于 06-16 10:32 ?1249次閱讀

    SoC設(shè)計(jì)中總線協(xié)議AXI4與AXI3的主要區(qū)別詳解

    AXI4和AXI3是高級(jí)擴(kuò)展接口(Advanced eXtensible Interface)的兩個(gè)不同版本,它們都是用于SoC(System on Chip)設(shè)計(jì)中的總線協(xié)議,用于處理器和其它外設(shè)之間的高速數(shù)據(jù)傳輸。
    的頭像 發(fā)表于 05-10 11:29 ?5816次閱讀
    <b class='flag-5'>SoC</b>設(shè)計(jì)中<b class='flag-5'>總線</b>協(xié)議AXI4與AXI3的主要區(qū)別詳解

    CANoe總線接口硬件VN1640A實(shí)物展示與功能介紹#汽車CAN總線?

    總線接口CAN總線接口
    北匯信息POLELINK
    發(fā)布于 :2024年04月11日 10:50:36

    電口模塊還是光模塊、DAC、AOC?一文解析通信接口的優(yōu)劣之選

    隨著通信技術(shù)的迅猛發(fā)展,各種通信接口如雨后春筍般涌現(xiàn),其中電口模塊、光模塊、DAC直連銅纜以及AOC有源光纜成為了業(yè)界的熱門(mén)選擇。這些接口模塊
    的頭像 發(fā)表于 04-01 17:50 ?1629次閱讀

    CYW54591 SoC有兩個(gè)物理獨(dú)立的wifi接口嗎?

    我有一個(gè)關(guān)于 CYW54591的問(wèn)題。 這個(gè) SoC 有兩個(gè)物理獨(dú)立的 wifi 接口嗎? 這意味著單獨(dú)的 MAC 地址以及像兩個(gè) wifi 卡一樣工作的能力? 我需要在項(xiàng)目中使用兩個(gè)獨(dú)立
    發(fā)表于 01-23 07:28

    SOC設(shè)計(jì)中APB協(xié)議總線的工作原理

    APB(Advanced Peripheral Bus) 作為高級(jí)外設(shè)總線是AMBA協(xié)議之一,也是最基本的總線協(xié)議。按照ARM官方定義,APB是一種低成本的接口協(xié)議,可以實(shí)現(xiàn)低功耗以及精簡(jiǎn)的
    發(fā)表于 01-17 17:35 ?1883次閱讀
    <b class='flag-5'>SOC</b>設(shè)計(jì)中APB協(xié)議<b class='flag-5'>總線</b>的工作原理

    CAN總線接口保護(hù)方案

    CAN總線的應(yīng)用范圍廣,應(yīng)用環(huán)境相當(dāng)復(fù)雜,一些靜電、浪涌等干擾很容易耦合到總線上,并直接作用于CAN總線接口。為了滿足一些高等級(jí)EMC的要求,有必要添加額外的外圍保護(hù)電路。CAN
    的頭像 發(fā)表于 01-13 08:27 ?654次閱讀
    CAN<b class='flag-5'>總線</b><b class='flag-5'>接口</b>保護(hù)方案

    RA8900CE汽車用c總線接口實(shí)時(shí)時(shí)鐘模塊

    汽車用c總線接口實(shí)時(shí)時(shí)鐘模塊內(nèi)置調(diào)頻32.768 kHz晶體單元和DTCXO,高穩(wěn)定性和電源切換。接口類型我2C-Bus接口(400kHz)
    發(fā)表于 01-04 17:35 ?0次下載

    一文了解SOC的DFT策略及全芯片測(cè)試的內(nèi)容

    SOC ( System on Chip)是在同一塊芯片中集成了CPU、各種存儲(chǔ)器、總線系統(tǒng)、專用模塊以及多種l/O接口的系統(tǒng)級(jí)超大規(guī)模集成電路。 由于
    發(fā)表于 12-22 11:23 ?2612次閱讀
    一文了解<b class='flag-5'>SOC</b>的DFT策略及全芯片測(cè)試的內(nèi)容

    MIPS對(duì)MIPS/RISC-V的未來(lái)如何思考?

    MIPS是一家歷史悠久的CPU IP內(nèi)核公司,業(yè)務(wù)和管理歷史曲折,在新任CEO Sameer Wasson(曾任TI高管)的領(lǐng)導(dǎo)下,MIPS正在譜寫(xiě)新的篇章。
    的頭像 發(fā)表于 12-19 09:12 ?811次閱讀