RM新时代网站-首页

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

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

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

基于XC95108芯片實(shí)現(xiàn)DSP和ARM的并行通信系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用 ? 作者:謝曉輝 , 吳森 ? 2021-06-23 14:43 ? 次閱讀

在現(xiàn)代汽車(chē)電子中,一般有多個(gè)微控制器共同協(xié)調(diào)工作。DSP控制器采用哈佛結(jié)構(gòu),運(yùn)算速度快,所以在汽車(chē)電子中廣泛采用DSP芯片來(lái)實(shí)現(xiàn)汽車(chē)動(dòng)力系統(tǒng)的控制。ARM是一種32位微控制器,有豐富的外擴(kuò)接口,因此在汽車(chē)電子中一般用ARM來(lái)實(shí)現(xiàn)大容最的數(shù)據(jù)存儲(chǔ)和人機(jī)交互或GPS全球定位系統(tǒng),故在DSP和ARM之間需要進(jìn)行數(shù)據(jù)交換。

CPLD(Complex Programmable Logic Device)是一種復(fù)雜的用戶可編程邏輯器件,由于采用硬件可編程技術(shù),從而使沒(méi)計(jì)硬件電路也像設(shè)計(jì)軟件一樣方便。DSP2407A是T1公司設(shè)計(jì)的一款專(zhuān)為滿足大范圍的數(shù)字電動(dòng)機(jī)控制應(yīng)用的微控制器。S3C4480是三星公司專(zhuān)為手持設(shè)備設(shè)計(jì)的高性價(jià)比的微控制器。本設(shè)計(jì)以Xilinx公司的XC95108為例,通過(guò)在CPLD中開(kāi)辟2塊獨(dú)立的SRAM區(qū)域(各1字節(jié))來(lái)實(shí)現(xiàn)DSP2407A與S3C4480的并行通信。采用這種通信方式,數(shù)據(jù)傳輸準(zhǔn)確、高速,基本可以滿足DSP2407A與S3C4480總線接口實(shí)時(shí)通信的要求,從而將整車(chē)動(dòng)力控制和人機(jī)交互有機(jī)地統(tǒng)一起來(lái)。

1 整體系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

DSP2407A負(fù)責(zé)采集汽車(chē)所有的數(shù)據(jù),再將數(shù)據(jù)通過(guò)CPLD發(fā)給S3C44B0進(jìn)行數(shù)據(jù)存儲(chǔ)和人機(jī)交互。有時(shí)S3C4480要接收觸摸屏命令,命令也通過(guò)CPLD發(fā)給DSP2407A控制器,從而控制整臺(tái)汽車(chē)的動(dòng)作。對(duì)DSP2407A,要及時(shí)響應(yīng)由S3C44B0發(fā)過(guò)來(lái)的命令;而對(duì)于S3C4480,要隨時(shí)接收DSP2407A送來(lái)的數(shù)據(jù),這樣,雙方通信的實(shí)時(shí)性就要很強(qiáng)。因此在系統(tǒng)設(shè)計(jì)中,DSP2407A用中斷方式接收數(shù)據(jù),S3C44BO用查詢方式接收數(shù)據(jù)。

在DSP2407A中,[DO~D7]是數(shù)據(jù)線,[A15~A12]是地址線,IS是I/0空間選通引腳,當(dāng)訪問(wèn)外部的存儲(chǔ)器或I/O空間時(shí)為低電平。WE是寫(xiě)使能,RD是讀使能。IOPC7足通用I/O引腳,用來(lái)判斷DSP2407A是否可以往CPLD寫(xiě)數(shù)據(jù)。當(dāng)IOPC7為低電平時(shí),代表DSP2407A可以往CPLD中寫(xiě)數(shù)據(jù);若為高電平,則表示CPLD中已有數(shù)據(jù),這時(shí)DSP2407A不能往CPLD中寫(xiě)數(shù)據(jù)。XINT1是外部中斷,用來(lái)通知DSP2407A準(zhǔn)備讀取CPLD中的數(shù)據(jù)。

在CPLD中,用l片XC95l08來(lái)實(shí)現(xiàn)。XC95108共有108個(gè)宏單元,有足夠的空間來(lái)實(shí)現(xiàn)2個(gè)8位的SRAM區(qū);主要用來(lái)實(shí)現(xiàn)DSP2407A和S3C44B0之間的數(shù)據(jù)交換,沒(méi)置DSP2407A和S3C44B0讀/寫(xiě)控制的狀態(tài)位。在S3C44B0中’[D0~D7]是數(shù)據(jù)線,nGCSl是芯片選擇信號(hào),當(dāng)存儲(chǔ)器地址在相應(yīng)段的地址區(qū)域時(shí)芯片被激活。nWE是寫(xiě)允許信號(hào),nOE是讀允許信號(hào)。IOPF0是通用I/O口,用來(lái)監(jiān)視可否從CPLD中讀取數(shù)據(jù):當(dāng)它為高電平時(shí),代表CPLD中有數(shù)據(jù),可以讀取數(shù)據(jù);當(dāng)它為低電平時(shí)。表示CPLD中無(wú)數(shù)據(jù)可讀取。IOPF1是通用I/O口,用來(lái)監(jiān)視可否向CPLD中寫(xiě)數(shù)據(jù):當(dāng)它為高電平時(shí),代表CPLD中無(wú)數(shù)據(jù),可以向CPLD中寫(xiě)數(shù)據(jù);當(dāng)它為低電平時(shí),代表CPLD中已有數(shù)據(jù),S3C44B0不能向CPLD中寫(xiě)數(shù)據(jù)。系統(tǒng)結(jié)構(gòu)如圖1所示。

pYYBAGDS2QmAWAJaAAD54uwKWwI505.png

2 CPLD的設(shè)計(jì)

采用Xilinx ISE8.1為設(shè)計(jì)工具,用國(guó)際上通用的VHDL語(yǔ)言來(lái)編寫(xiě)源程序。

2.1 8位數(shù)據(jù)從DSP中傳送到ARM中

當(dāng)[A15~A12]是1100時(shí),DSP2407A開(kāi)始向CPLD中寫(xiě)數(shù)據(jù),并置dspsign_write和armsign_read為1;表示CPLD中已經(jīng)有數(shù)據(jù)了,通知S3C4480可以讀取數(shù)據(jù)和DSP2407A暫時(shí)不能向CPLD中寫(xiě)數(shù)據(jù);同時(shí)將數(shù)據(jù)寫(xiě)入鎖存器sraml中。

當(dāng)ARM發(fā)出讀取數(shù)據(jù)信號(hào),開(kāi)始將數(shù)據(jù)從sraml中讀出,并且置dspsign_write和armsign_read為0時(shí),表示CPLD中沒(méi)有數(shù)據(jù)了,DSP2407A可以向CPLD中重新寫(xiě)數(shù)據(jù)。

poYBAGDS2QKADFhHAAD8nVxu4pM973.png

2.2 8位數(shù)據(jù)從83CA480中傳送到DSP2407A中

當(dāng)S3C4480向CPLD寫(xiě)數(shù)據(jù)時(shí),將數(shù)據(jù)寫(xiě)入到鎖存器sram2中,同時(shí)置dsp_int為0,通知DSP2407A產(chǎn)生一個(gè)外部中斷,可以從CPLD中取數(shù)據(jù);置armsign_write為0,表示CPLD中已有數(shù)據(jù),S3C4480不能再向CPLD中寫(xiě)數(shù)據(jù)。

當(dāng)[A15~12]是1101時(shí),DSP2407A向CPLD中發(fā)出一個(gè)讀取信號(hào),數(shù)據(jù)從鎖存器sram2傳送給DSP2407A中,并且置dsp_int為1,armsign_write為l,表示數(shù)據(jù)已被DSP2407A讀走,S3C4480可以繼續(xù)向CPLD中寫(xiě)數(shù)據(jù)。

pYYBAGDS2PuAdZuoAACltOvBI2k288.png

3 S3C4480和DSP2407A通信軟件設(shè)計(jì)

在本程序中,DSP2407A采用中斷方式接收數(shù)據(jù),S3C4480采用查詢端口方式接收數(shù)據(jù)。

(1)DSP2407A程序

pYYBAGDS2PSAP7ZyAAGlGr3MZcY144.png

責(zé)任編輯:gt

聲明:本文內(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)注

    455

    文章

    50714

    瀏覽量

    423116
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1248

    瀏覽量

    169332
  • 通信系統(tǒng)
    +關(guān)注

    關(guān)注

    6

    文章

    1187

    瀏覽量

    53322
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA+DSP+ARM開(kāi)發(fā)板

    本帖最后由 eehome 于 2013-1-5 09:56 編輯 XC5VLX330大型FPGA開(kāi)發(fā)驗(yàn)證平臺(tái)ARM + DSP + FPGA高級(jí)通信
    發(fā)表于 12-25 15:47

    什么是基于FPGA的ARM并行總線?

    在數(shù)字系統(tǒng)的設(shè)計(jì)中,F(xiàn)PGA+ARM系統(tǒng)架構(gòu)得到了越來(lái)越廣泛的應(yīng)用,F(xiàn)PGA 主要實(shí)現(xiàn)高速數(shù)據(jù)的處理;ARM 主要
    發(fā)表于 09-17 06:21

    怎么實(shí)現(xiàn)ARM/DSP雙核系統(tǒng)通信接口的設(shè)計(jì)?

    本文介紹了使用ARMDSP雙CPU構(gòu)成的雙核嵌入式系統(tǒng)的硬件平臺(tái),以及源代碼開(kāi)放的Linux作為嵌入式系統(tǒng)中操作系統(tǒng)的方法,給出了
    發(fā)表于 05-26 06:21

    如何用CPLD實(shí)現(xiàn)DSP2407A與S3C4480的通信?

    本設(shè)計(jì)以Xilinx公司的XC95108為例,通過(guò)在CPLD中開(kāi)辟2塊獨(dú)立的SRAM區(qū)域(各1字節(jié))來(lái)實(shí)現(xiàn)DSP2407A與S3C4480的并行通信
    發(fā)表于 06-03 07:06

    如何實(shí)現(xiàn)arm與多DSP之間的通信問(wèn)題呢求解

    ARM主要是用來(lái)實(shí)現(xiàn)系統(tǒng)控制和網(wǎng)絡(luò)傳輸,要如何來(lái)實(shí)現(xiàn)arm與多DSP之間的
    發(fā)表于 04-18 09:28

    XC9572和XC95108 DIY CPLD實(shí)驗(yàn)板的PCB

    描述XC9572和XC95108 DIY CPLD實(shí)驗(yàn)板的PCB該板需要外部 JTAG 電纜來(lái)對(duì)器件進(jìn)行編程。JTAG 電纜可以是傳統(tǒng)計(jì)算機(jī)并行端口或現(xiàn)代 USB JTAG 編程器。一條并行
    發(fā)表于 08-05 07:09

    基于VxWorks的多DSP并行處理系統(tǒng)實(shí)現(xiàn)

    基于VxWorks的多DSP并行處理系統(tǒng)實(shí)現(xiàn)
    發(fā)表于 03-29 12:31 ?17次下載

    在HP 3070系列檢測(cè)器上的XC95216和XC95108

    在HP 3070系列檢測(cè)器上的XC95216和XC95108的快速擦除時(shí)間
    發(fā)表于 05-13 14:52 ?34次下載
    在HP 3070系列檢測(cè)器上的<b class='flag-5'>XC</b>95216和<b class='flag-5'>XC95108</b>

    在HP 3070系列檢測(cè)器上的XC95216和XC95108

    for the XC95216 and XC95108. The revision 1 designation is delineated by a 1 in the 4 msb of the JTAG ID register. FBULK groups togethe
    發(fā)表于 05-15 14:01 ?3次下載

    ARMDSP的SPI通信設(shè)計(jì)實(shí)現(xiàn)

    提出一種測(cè)量?jī)x器的多處理機(jī)分布式控制方案, 并對(duì)DSP 與移植了Linux 操作系統(tǒng)ARM之間SPI 通信設(shè)計(jì)進(jìn)行了著重闡述。對(duì)于這樣的特定系統(tǒng)
    發(fā)表于 06-14 17:25 ?127次下載
    <b class='flag-5'>ARM</b>與<b class='flag-5'>DSP</b>的SPI<b class='flag-5'>通信</b>設(shè)計(jì)<b class='flag-5'>實(shí)現(xiàn)</b>

    ARM+DSP實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控系統(tǒng)

    ARM+DSP實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控系統(tǒng)!??!
    發(fā)表于 11-18 16:40 ?2次下載

    基于DSPARM便攜式電能質(zhì)量監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

    基于DSPARM便攜式電能質(zhì)量監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
    發(fā)表于 09-25 08:25 ?8次下載
    基于<b class='flag-5'>DSP</b>和<b class='flag-5'>ARM</b>便攜式電能質(zhì)量監(jiān)測(cè)<b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)與<b class='flag-5'>實(shí)現(xiàn)</b>

    DSP并行系統(tǒng)并行粒子群優(yōu)化目標(biāo)跟蹤

    DSP并行系統(tǒng)并行粒子群優(yōu)化目標(biāo)跟蹤
    發(fā)表于 10-20 10:54 ?6次下載
    <b class='flag-5'>DSP</b><b class='flag-5'>并行</b><b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>并行</b>粒子群優(yōu)化目標(biāo)跟蹤

    ARM芯片通過(guò)HPI接口與DSP通信的接口技術(shù)

    在許多硬件系統(tǒng)設(shè)計(jì)中,廣泛采用了主機(jī)+DSP的方式。其中主機(jī)與DsP之間如何進(jìn)行有效的通信就 顯得尤其的重要。本文 以SAMSUNG公 司的ARM
    發(fā)表于 07-05 15:15 ?8次下載

    XC9572和XC95108 DIY CPLD實(shí)驗(yàn)板的PCB

    電子發(fā)燒友網(wǎng)站提供《XC9572和XC95108 DIY CPLD實(shí)驗(yàn)板的PCB.zip》資料免費(fèi)下載
    發(fā)表于 07-22 11:33 ?6次下載
    <b class='flag-5'>XC</b>9572和<b class='flag-5'>XC95108</b> DIY CPLD實(shí)驗(yàn)板的PCB
    RM新时代网站-首页