嵌入式處理器MPC8272與外設的息線(xiàn)適配
在一個(gè)系統中,可能存在多片數字信號處理器TMS320VC5416,它們分別完成DTMF收發(fā)號、FSK來(lái)電號碼顯示和會(huì )場(chǎng)話(huà)音融合等功能。TMS320VC5416采用8位HPI接口與嵌入式處理器進(jìn)行數據交換,其通信原理與兩個(gè)處理器之間采用雙口RAM進(jìn)行數據通信相似,即兩處理器共享一段內存空間,分不同時(shí)間對其讀寫(xiě)操作。當處理器1正在對一個(gè)內存地址操作(讀或寫(xiě)),而處理器2也需對其進(jìn)行操作(寫(xiě)或讀)時(shí),此時(shí)輸出忙占用信號,處理器2需等待忙占用信號結束后才能完成本次寫(xiě)或讀操作。TMS320VC5416與雙口RAM IDT71V321的不同之處在于:嵌入式處理器操作IDT71V321是直接內存操作,而嵌入式處理器操作TMS320VC5416是通過(guò)HPI接口地址、數據寄存器間接操作TMS320VC5416的內存空間的。另外,TMS320VC5416的HPI接口忙信號HRDY為高電平有效,IDT71V321接口忙信號BUSY為低電平有效。HRDY和BUSY信號的產(chǎn)生均具有隨機性,且隨著(zhù)總線(xiàn)操作頻率的增加而加大;忙等待時(shí)間tRDY和tBUSY也具有不確定性,與其通信的處理器運行速度的快慢有關(guān),讀寫(xiě)時(shí)序如圖4所示。
VGGl2864E是北京維信諾科技有限公司開(kāi)發(fā)的128×64點(diǎn)陣OLED顯示模塊,讀寫(xiě)時(shí)序如圖5所示。該OLED模塊的使能信號E的周期tEC最小為1 000 ns(相當于固定1 Mbps的總線(xiàn)速率),使能信號脈沖寬度tEH、tEL最小為450 ns。嵌入式處理器MPC8272若采用總線(xiàn)方式直接控制0LED模塊,則MPC8272的讀、寫(xiě)周期最大值為170 ns,其讀、寫(xiě)時(shí)序不能滿(mǎn)足該OLED模塊的要求,需設計相應的外部硬件等待邏輯電路來(lái)擴展MPC8272的讀、寫(xiě)周期時(shí)長(cháng),以滿(mǎn)足OLED模塊的要求。
3 總線(xiàn)適配設計
快速嵌入式處理器與慢速外設的總線(xiàn)適配方法大致有3種:降低外部總線(xiàn)頻率、調整片選控制寄存器時(shí)鐘周期數和使用外部輸入確認信號TA(Intel處理器名為數據準備好信號RDY,三星處理器名為總線(xiàn)周期延長(cháng)請求信號nwait,它們的工作原理相同)。
降低嵌入式處理器外部總線(xiàn)頻率可加長(cháng)總線(xiàn)數據傳輸周期,達到與低速外設匹配的目的,但大大降低了處理器的利用率和效率。該方法不可取。
調整嵌入式處理器片選控制寄存器的插入時(shí)鐘周期數,可以滿(mǎn)足總線(xiàn)周期固定且不大于處理器外部總線(xiàn)周期的外設的要求,但不能滿(mǎn)足總線(xiàn)周期不確定和大于處理器外部總線(xiàn)周期的外設的要求。例如,MPC8272的外部總線(xiàn)工作頻率為100 MHz,外部總線(xiàn)指令周期最大為170 ns,可以滿(mǎn)足總線(xiàn)周期小于170 ns的外設的要求,但不能與0LED模塊(周期為l000 ns)連接。由于TMS320VC5416和IDT71V321接口的不確定性,其總線(xiàn)也不能與嵌入式處理器總線(xiàn)直接連接,需使用其外部輸入確認信號TA并設計外部邏輯電路進(jìn)行適配,以滿(mǎn)足穩定、可靠的外部總線(xiàn)讀寫(xiě)需要,其硬件連接如圖6所示。MT90826數據總線(xiàn)接口為16位寬,設置MPC8272的片選CS4為16位寬與其匹配;其他外設數據總線(xiàn)均為8位寬,共用MPC8272的片選CS5,并與高位地址線(xiàn)A18、A17進(jìn)行地址譯碼產(chǎn)生其他外設的片選使能信號。CPLDEPM3064的詳細設計如圖7所示。
評論