• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > TMS320C31和80C196雙CPU構(gòu)成的高速實(shí)時(shí)控制

    TMS320C31和80C196雙CPU構(gòu)成的高速實(shí)時(shí)控制

    作者: 時(shí)間:2011-01-13 來(lái)源:網(wǎng)絡(luò) 收藏

    3 雙口RAM IDT7130/40的中斷邏輯設(shè)計(jì)

    雙口RAM必須采用一定的機(jī)制來(lái)協(xié)調(diào)左右兩邊CPU對(duì)它的讀寫操作。IDT公司的雙口RAM系列用口斷、硬件、令牌和軟件這四種方式來(lái)協(xié)調(diào)雙方。在TMS320C31和80C196雙CPU構(gòu)成的高速實(shí)時(shí)控制系統(tǒng)中,IDT7140采用的是中斷方式。下面介紹IDT雙口RAM系列的中斷邏輯設(shè)計(jì)。

    如圖2所示,IDT雙口RAM的中斷邏輯實(shí)際上是由與非門組成的兩個(gè)基本RS觸發(fā)器所構(gòu)成。在所有的IDT雙口RAM芯片中,內(nèi)存的最高兩個(gè)單元被用作為左右兩邊CPU的中斷信箱。以1K雙口RAM為例,這兩個(gè)單元為3FEH和3FFH。其中3FEH為左邊CPU的中斷信箱,3FFH為右邊CPU的中斷信箱。各CPU只能讀自己的中斷信箱,寫對(duì)方的中斷信箱;而不能寫自己的中斷信箱,讀對(duì)方的斷信箱。當(dāng)左邊CPU中右邊CPU的中斷信箱3FFH單元寫入數(shù)據(jù)時(shí),圖2中/WR置0,IRn+1置1,指向右邊CPU的中斷信號(hào)有效;當(dāng)右邊CPU從自己中斷信箱3FFH單元讀數(shù)據(jù)時(shí),圖2中/RR置0,則IRn+1置0,指向右邊CPU的中斷信號(hào)被清除。同樣地,右邊CPU對(duì)左邊CPU中斷信號(hào)的設(shè)置和清除也是如此,只不過(guò)把上面的3FFH單元換為3FFH單元。其真值表如表1所示。

    表1 雙口RAM中斷邏輯真值表

    /WR/RRIRnIRn+1
    0
    0
    1
    1
    0
    0
    1
    1
    0
    0
    0
    0
    1
    1
    1
    1
    0
    1
    0
    1
    0
    1
    0
    1
    1*
    1*
    0
    0
    1
    1
    0
    1

    從圖2和表1不難看出,指向右邊CPU的中斷信號(hào)從被置為低電平那一刻起一直有效至右邊CPU來(lái)讀3FFH單元。TMS320C31要求一個(gè)外部中斷必須至少持續(xù)一個(gè)H1周期保持為低電平,以便讓TMS320C31來(lái)確認(rèn)。如果外部中斷信號(hào)在一到三個(gè)H1周期之內(nèi)保持為低,那么只有一個(gè)中斷被確認(rèn);如果在三個(gè)或更多個(gè)周期內(nèi)保持為低,則可以確認(rèn)多于一個(gè)中斷。所以IDT7140提供的中斷信號(hào)的有效時(shí)間可以滿足TMS320C31的要求,這樣IDT7140的/INTL引腳就可以和TMS320C31的INT1直接相連。但與此同時(shí)也要求TMS320C31盡快地服務(wù)IDT7140的中斷申請(qǐng),以免一個(gè)中斷申請(qǐng)被誤認(rèn)為多個(gè)中斷申請(qǐng)。

    4 TMS320C31與80C196之間采用雙口RAM進(jìn)行高速數(shù)據(jù)通信的軟件實(shí)現(xiàn)

    從圖2中我們得知,左邊CPU寫右邊CPU的中斷信箱3FFH單元時(shí),雙口RAM會(huì)給右邊CPU發(fā)一中斷信號(hào);同樣,右邊CPU在寫左邊CPU的中斷信箱3FFH單元時(shí),雙口RAM也會(huì)給左邊CPU發(fā)一中斷信號(hào)。以左邊的TMS320C31為例,在它獲得外部中斷信號(hào)INT1后,它并不知道右邊的80C196是剛開(kāi)始占用雙口RAM還是用完了要釋放使用權(quán),或者是其它別的意思。所以雙方事先應(yīng)有一個(gè)簡(jiǎn)單的協(xié)議,例如右邊CPU在3FEH單元中(或右邊CPU在3FFH單元中)寫“FFH”代表右(左)邊正占用雙口RAM,定“11H”代表要釋放使用權(quán),或者還可以有更多的數(shù)據(jù)含義的定義,視兩邊CPU通信內(nèi)容的復(fù)雜程度而定。例如在這個(gè)高速實(shí)時(shí)控制系統(tǒng)中,還定義了“88H”和“55H”來(lái)表示其它的含義。這樣,在中斷服務(wù)程序里,就可以做相應(yīng)的操作。下面以TMS320C31為例來(lái)說(shuō)明數(shù)據(jù)通信的軟件實(shí)現(xiàn),程序流程如圖3和圖4所示。

    隨著各種復(fù)雜算法的應(yīng)用越來(lái)越廣泛,DSP的應(yīng)用也會(huì)越來(lái)越普及,各種不同的多CPU系統(tǒng)不斷涌現(xiàn)。在這些系統(tǒng)中,雙口RAM以它方便、快速的特點(diǎn)將成為很多多CPU系統(tǒng)中的通信途徑。


    上一頁(yè) 1 2 下一頁(yè)

    評(píng)論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 高雄市| 湛江市| 肥西县| 紫阳县| 大埔县| 天柱县| 巴彦淖尔市| 桂东县| 南昌市| 二连浩特市| 阿瓦提县| 淮北市| 九龙县| 大连市| 奉贤区| 金山区| 中西区| 满城县| 蒙山县| 宝兴县| 乌什县| 海丰县| 土默特右旗| 紫金县| 墨竹工卡县| 乐亭县| 缙云县| 安塞县| 巧家县| 措美县| 泾川县| 噶尔县| 文登市| 安溪县| 石林| 玉门市| 苍梧县| 安吉县| 青龙| 太和县| 高陵县|