成人免费观看网欧美片-成人免费观看视频-成人免费观看男女羞羞视频-成人免费观看的视频黄页-成人免费高清视频-成人免费福利片在线观看

  •  歡迎來到 深圳市毅創(chuàng)騰電子科技有限公司  
網(wǎng)站首頁 > 電子資訊> XILINX Spartan?-3開發(fā)板上的新型處理器

XILINX Spartan?-3開發(fā)板上的新型處理器

信息來源 : 網(wǎng)絡(luò) | 發(fā)布時間 : 2016-04-08 10:21 | 瀏覽次數(shù) : 1312

幾年前,我的朋友Paul Reed建議我重新修訂并再次出版這本書,不僅因為這本書對系統(tǒng)設(shè)計教學(xué)具有重要價值,同時還因為這本書可以作為良好的切入點(diǎn),幫助那些想要成為創(chuàng)新者的人們從零基礎(chǔ)構(gòu)建可靠的系統(tǒng)。

  然而,我當(dāng)時實際上是遇到了很大的困難。我最初開發(fā)的編譯器是將已基本消失了的處理器作為目標(biāo)。因此,我的解決辦法就是為現(xiàn)代處理器重新編寫編譯器。但在做了不少研究之后,我無法找到一款能夠在清晰度、規(guī)律性和簡潔性上符合我標(biāo)準(zhǔn)的處理器。因此,我自己設(shè)計了這款編譯器。而我之所以能夠?qū)⒃撓敕ǜ吨T實現(xiàn),都是因為現(xiàn)代FPGA能夠幫助我設(shè)計硬件以及系統(tǒng)軟件。

  選擇賽靈思 FPGA能幫助我更新系統(tǒng),同時讓設(shè)計盡可能接近自1990年以來的原始版本。更重要的是,選擇賽靈思FPGA 能幫助我更新系統(tǒng),同時讓設(shè)計盡可能接近自1990年以來的原始版本。

  實現(xiàn)在低成本Digilent Spartan?-3開發(fā)板上的新型處理器RISC負(fù)責(zé)托管1MB靜態(tài)RAM (SRAM)內(nèi)存。我唯一添加的系統(tǒng)硬件就是一個鼠標(biāo)接口和一個用來替換舊系統(tǒng)中硬盤驅(qū)動器的SD卡。

  這本書和面向整個系統(tǒng)的源代碼可在projectoberon.com[3,4,5]中查閱,也可在該網(wǎng)站上名為 S3RISCinstall.zip.的單個文件中進(jìn)行查閱。該文件包含指令、SD卡文件系統(tǒng)圖像和FPGA配置比特文件(對于Spartan-3開發(fā)板的 Platform Flash,此為PROM文件形式),以及SD卡/鼠標(biāo)接口硬件的構(gòu)造詳圖。

RISC處理器

  該處理器由算術(shù)邏輯單元、由16個32位寄存器組成的陣列和帶指令寄存器、IR及程序計數(shù)器PC的控制單元組成。Verilog模塊RISC5就是該處理器的典型代表。

  該處理器具有20種指令:4種用于移動、偏移和旋轉(zhuǎn);4種用于邏輯運(yùn)算;4種用于整數(shù)運(yùn)算;4種用于浮點(diǎn)運(yùn)算;2種用于存儲器訪問;2種用于分支。

  RISC5通過運(yùn)行環(huán)境RISC5Top導(dǎo)入。該運(yùn)行環(huán)境包括到各種(內(nèi)存映射)器件和SRAM(256M×32 位)的接口。

  整個系統(tǒng)(圖1)包括以下Verilog模塊(見行統(tǒng)計)

RISC5Top

運(yùn)行環(huán)境

194

RISC5

處理器

201

乘法器

整數(shù)運(yùn)算

47

除法器


24

FP加法器

浮點(diǎn)運(yùn)算

98

FP乘法器


33

FP除法器


35

SPI

SD卡和發(fā)送器/接收器

25

VID

1024×768 視頻控制器

73

PS2

鍵盤

25

鼠標(biāo)

鼠標(biāo)

95

RS232T

RS232 發(fā)送器

23

RS232R

RS232 接收器

25


  圖1 – 該系統(tǒng)及其所含Verilog模塊的方框圖

  我將內(nèi)存映射到黑白VGA顯示器中,這樣它只占用1024×768×1 位/像素=98304字節(jié),基本上
占 1 MB可用主內(nèi)存的10%。該SD卡將取代初始系統(tǒng)中80MB的硬盤驅(qū)動器,其可通過能夠接受并序列化字節(jié)或32位字的標(biāo)準(zhǔn)SPI接口進(jìn)行存取。鍵盤和鼠標(biāo)通過標(biāo)準(zhǔn)PS-2串行接口連接。此外,還提供一根串行異步的RS-232線和一個通用8位并行的I/O接口。模塊RISC5Top還帶有一個每毫秒采用增量式計數(shù)的計數(shù)器。

OBERON操作系統(tǒng)

  該操作系統(tǒng)軟件由包括內(nèi)存分配器(帶垃圾回收器)的內(nèi)核、文件系統(tǒng)以及引導(dǎo)載入程序、文本系統(tǒng)、瀏覽器系統(tǒng)和文本編輯器組成。

  名為“Oberon”的模塊是中心任務(wù)調(diào)度程序,而“System”是基礎(chǔ)命令模塊。通過點(diǎn)擊顯示器上任何瀏覽器文本“M.P”上的中間按鈕即可觸發(fā)動作,其中P是模塊M聲明的程序名。如果M不存在,則會自動加載。但是,大多數(shù)文本編輯命令是通過簡單的鼠標(biāo)點(diǎn)擊觸發(fā)的。

  其中,左邊一欄按鈕用來設(shè)置"脫字"符,標(biāo)記文本位置,右邊一欄按鈕用來選擇文本字段(text stretch)。

  “Kernel”模塊包括磁盤存儲管理和垃圾回收器。我保證觀察瀏覽器是平鋪的,不重疊。標(biāo)準(zhǔn)布局顯示了多個瀏覽器的兩條垂直軌跡。只需拖動標(biāo)題欄,就可以放大、縮小或移動它們。圖2顯示了在顯示器上運(yùn)行的用戶界面以及Spartan-3開發(fā)板、鍵盤及鼠標(biāo)。

  圖2 - 顯示用戶界面的顯示器(Spartan-3開發(fā)板在右側(cè))

  加載時系統(tǒng)占用模塊空間112640字節(jié)(21%),占堆(heap)的16128字節(jié)(3%)。系統(tǒng)包括所以下幾個模塊(見行統(tǒng)計),如圖3所示:

內(nèi)核

271

(內(nèi)核)

文件目錄

352


文件

505


模塊(引導(dǎo)載入程序)

226


瀏覽器

216

(外核)

文本

532


Oberon

411


菜單瀏覽器

208


文本幀

874


系統(tǒng)

420


編輯

233






  圖3 - 系統(tǒng)及其模塊

  值得注意的是,該系統(tǒng)在加電或重置時,完成初始化僅需兩秒鐘。這包括文件目錄中垃圾回收掃描。

OBERON編譯器

  系統(tǒng)自帶的編譯器采用簡單的自上而下遞歸下降分析法。用戶使用ORP.Compile @命令即可激活模塊選定的源文本上的編譯器。

  包解析器通過掃描儀輸入各種符號,包括識別符、數(shù)字和特殊符號(如BEGIN、END、+等)。該方案已被證明在許多應(yīng)用中有效且均表現(xiàn)不凡。這點(diǎn)在我著的書《編譯器結(jié)構(gòu)》[6,7]中有詳細(xì)說明。

  該包解析器調(diào)用代碼生成程序模塊中的程序。這些程序直接將指令添加在代碼陣列上。如果已知所有分支目的地,向前跳轉(zhuǎn)指令(forward-branch instructions)在模塊編譯結(jié)束時則會提供跳轉(zhuǎn)地址(修正)。

  所有可變地址都與基址寄存器關(guān)聯(lián)。這就是用于局部變量(運(yùn)行時設(shè)置在程序輸入)的R14(堆棧指示器)或用于全局和輸入變量的R13。

  基址地址按要求通過地址保存在寄存器R12內(nèi)的系統(tǒng)全局模塊表載入。R15用于RISC架構(gòu)確定的返回地址(鏈接)。因此,R0-R11可用于表達(dá)式評估和傳遞過程參數(shù)。

  整個編譯器由4個相對較小的有效模塊組成(見行統(tǒng)計):

ORP包解析器968
ORG代碼生成器1120
ORBbase def435
ORS掃描儀311




  編譯器占用115912字節(jié)(22%)的模塊空間和17508字節(jié)(4%)的堆空間(編譯之前)。其源代碼長約65KB。編譯器自身的編譯在25 MHz RISC處理器上只需幾秒鐘[8]。

 Lola HDL及Verilog翻譯

  名為Lola的硬件描述語言(HDL)于1990年作為硬件設(shè)計基礎(chǔ)教學(xué)的一種方式開發(fā)。這一時期,文本定義開始替代電路圖,首個FPGA開始應(yīng)用,盡管尚未達(dá)到主流設(shè)計。Lola由生成位流文件(被加載到FPGA)的編譯器執(zhí)行。位流文件格式由Algotronix公司和 Concurrent Logic 公司共同開發(fā)。這兩家公司提供的存儲單元結(jié)構(gòu)都比較簡單,看起來好像是自動布局布線的最佳選擇。

  在我的項目之后,緊接著是在FPGA上重新實現(xiàn)Oberon系統(tǒng),現(xiàn)在突然出現(xiàn)這種想法以喚醒Lola。由于賽靈思 FPGA存儲單元結(jié)構(gòu)相當(dāng)簡單,所以我們沒有冒險實現(xiàn)布局布線,更何況賽靈思因?qū)@蚨芙^透露其位流文件格式這一事實。

  很明顯,要建立不生成專有位流文件但翻譯成賽靈思能為其提供綜合工具的語言的Lola編譯器。我們選擇了Verilog。這種解決方法意味著迂回繞路相當(dāng)浪費(fèi):首先,Lola模塊已經(jīng)經(jīng)過包解析,然后翻譯,然后再次包解析。通過所有這些措施,我們確信Lola編譯器具有適當(dāng)?shù)腻e誤報告和類型一致性檢查功能。

  為促進(jìn)Lola-2的開發(fā),我們決心用Lola重新定義所有RISC5處理器模塊。現(xiàn)在,這已經(jīng)實現(xiàn)了。

LOLA語言

  Lola是一種Oberon風(fēng)格的短小而精煉的程序語言(見http://www.inf.ethz.ch/personal/wirth/Lola/Lola2.pdf)。為簡單起見,我們在這里只展示一個簡單的Lola文本實例。源文本單元被稱為模塊。其報頭規(guī)定了名稱及其輸入和輸出參數(shù),以及各參數(shù)的名稱和類型。

  MODULE Counter0 (IN CLK50M, rstIn: BIT;

  IN swi: BYTE; OUT leds: BYTE);

  TYPE IBUFG: = MODULE (IN I: BIT; OUT O: BIT)^; VAR clk, tick0, tick1: BIT;

  clkInBuf: IBUFG; REG (clk) rst: BIT;

  cnt0: [16] BIT; (*半毫秒*)

  cnt1: [10] BIT; (*半秒*)

  cnt2: BYTE;

  BEGIN leds:= swi.7 ->swi : swi.0 -> cnt1[9:2]:cnt2;

  tick0:= (cnt0 = 49999);

  tick1:= tick0 & (cnt1 =499); rst:= ~rstIn;

  cnt0:= ~rst -> 0: tick0 ->0 : cnt0 + 1; cnt1 := ~rst -> 0 : tick1 -> 0 : cnt1 +tick0; cnt2 := ~rst -> 0 : cnt2 + tick1;

  clkInBuf (CLK50M,clk) END Counter0.

  編譯器通常使用值為NIL的指示檢查數(shù)組索引和基準(zhǔn)值。如果違反規(guī)定,這會造成陷阱。這種技術(shù)具有高度的安全性,防止錯誤和崩潰。事實上,只能通過采用偽模塊SYSTEM中的操作,即PUT和COPY,才能防礙系統(tǒng)的完整性。

  這些操作必須局限于接入器件接口的驅(qū)動模塊。在輸入列表中,通過SYSTEM很容易識別它們。整個系統(tǒng)采用Oberon編程,無需使用匯編碼。

  我選擇Digilent Spartan-3 開發(fā)板是由于其成本低、操作簡便,這使其適于教育機(jī)構(gòu),以獲得整套課堂教學(xué)套件。

  一個重大優(yōu)勢就是該開發(fā)板上有靜態(tài)RAM,使得接口連接非常簡單直觀(甚至用于字節(jié)選擇)。遺憾的是,所有新開發(fā)板均采用動態(tài)RAM,雖然存儲空間更大,但接口連接復(fù)雜得多,因此刷新和初始化(校準(zhǔn))需要電路。這一電路與帶靜態(tài)RAM的整個處理器一樣復(fù)雜。即使控制器以單片式提供,這有悖于我們的開放檢查原則。

  報頭之后是一段包含本地對象(如變量和寄存器)的聲明。之后一段通過賦值規(guī)定變量和寄存器數(shù)值。BYTE表示一個8位陣列。
  每一個變量和寄存器通過唯一一種表達(dá)式(組合電路)進(jìn)行定義。多重賦值沒有任何意義。可以想象,每個HDL程序包含在一個大的永遠(yuǎn)重復(fù)子句中,因為寄存器和變量賦值會在每一個同步時鐘脈沖周期內(nèi)重復(fù)。

LOLA編譯器

  編譯器采用簡單的自上而下遞歸下降分析法。通過LSC.Compile @命令在所選Lola源文本上激活該編譯器。包分析器包解析器通過掃描儀輸入各種符號,包括識別符、數(shù)字和特殊符號(如BEGIN、END、+等)。該方案已被證明在許多應(yīng)用中有效且表現(xiàn)不凡。這在我著的書《編譯器結(jié)構(gòu)》 (第1部分和第2部分)中有詳細(xì)說明。

  而不是直接即時生成Verilog文本,作為語法分析的一種意外結(jié)果,包分析器中會出現(xiàn)語句,從而生成樹形結(jié)構(gòu),以適當(dāng)方式表示輸入文本,以便進(jìn)一步處理。這種結(jié)構(gòu)具有一個優(yōu)點(diǎn),即通過調(diào)用不同翻譯程序很容易生成各種不同的輸出。其中一個就是Verilog翻譯程序。命令為 LSV. List outputfile.v。另一個命令可能翻譯至VHDL或簡單地列出樹形結(jié)構(gòu)。但也有可能生成網(wǎng)表,以便通過布局器和布線器進(jìn)行進(jìn)一步處理。

  因此,整個編譯器至少包括4個相對較小的高效模塊組成(線數(shù)顯示):

LSS

掃描儀

159



LSB

基址

52



LSC

編譯器/包解析器

503



LSV

Verilog 生成器

215








該信息來源于網(wǎng)絡(luò),如有侵權(quán),請及時與我們聯(lián)系
日本高清WWW色视频总站| 免费A级毛片无码无遮挡| 18岁日韩内射颜射午夜久久成人| 欧美日韩XXOO无码专区| 国产 校园 另类 小说区| 亚洲国产精品久久久久网站 | 日本中文字幕乱码免费| 国产内射爽爽大片视频社区在线 | 国产福利一区二区三区在线视频 | 国产无遮挡又黄又爽又色| 亚洲综合无码久久精品综合| 琪琪午夜成人理论福利片美容院| 国产精品国产三级国产专播| 亚洲一区二区自偷自拍另类| 欧美伊人色综合久久天天| 国产精品久久久久AV福利动漫| 亚洲欧美在线制服丝袜国产| 欧美午夜一区二区福利视频| 国产精品国产精品偷麻豆 | 学生无码AV一区二区三区| 久久午夜无码鲁丝片午夜精品| XXXX日本少妇做受| 西方14147大但人文艺术| 老妇做爰XXXⅩ性视频| 成视频年人黄网站免费视频| 亚洲AV无码专区亚洲AV伊甸园| 免费无码又爽又刺激软件下载直播 | 国产熟睡乱子伦视频| 中文字幕V亚洲日本在线| 少妇被黑人到高潮喷白浆| 精品人妻少妇敕草AV无码专区 | 美女露 0的奶头无| 国产L精品国产亚洲区久久| 亚洲色大成网站WWW在线| 人人爽人人澡人人高潮| 黑人高潮拔也拔不出来| 99精品国产一区二区三区不卡| 无码人妻AV一区二区三区蜜臀| 久久亚洲AV成人无码国产| 成人网站国产在线视频内射视频| 亚洲成色WWW久久网站| 欧亚尺码专线欧洲B1B1| 国内偷自第一区二区三区| 97久久香蕉国产线看观看| 五月丁香六月狠狠爱综合| 免费A级毛片无码A∨蜜芽按摩| 国产成人无码精品久久久小说| 又粗又大又爽又舒服日产| 天堂А√中文在线官网| 乱码精品一卡2卡二卡三| 国产高清免费AV片在线观看不卡| 伊人丁香狠狠色综合久久| 首页 动漫 亚洲 欧美 日韩| 久久天堂AV综合合色蜜桃网| 国产★蜜臀AV无码| 中国熟妇毛多多裸交视频| 无码成人黄动漫在线观看| 妺妺窝人体色WWW婷婷| 国产日产高清欧美一区| DIPTYQUE含羞草香薰| 亚洲成人AV在线播放| 日本精品VIDEOSSE×少妇| 久久久精品人妻无码专区不卡 | 99国产精品无码| 亚洲AV永久无无码精品一区二区| 人妻无码一区二区三区四区| 精品国产一区二区三区久久久狼| 成熟妇女一区av| 一区二区三区无码免费看| 无码精品A∨在线观看| 欧美另类AV重囗味| 精品成人免费一区二区| 成人网站WWW污污污网站| 野花影视视频在线观看免费| 我朋友的妻子2018| 欧美人与动牲交免费观看视频| 娇妻呻吟黑人又粗又大视频| 荡女小姿的YIN乱生活| 张柏芝跪下吃J8图片| 亚洲AV成人AV| 日韩熟妇αv无码激情视频| 麻豆国产AV丝袜白领传媒| 国产一区二区三区精品视频| 成人精品一卡2卡3卡4卡新区乱| 一区二区三区毛片| 性偷窥TUBE凸凹视频| 日韩Av无码一区二区| 蜜桃AV少妇久久久久久高潮不断| 国语对白刺激在线视频国产网红| 成人年无码AV片在线观看| 中文字幕久久久人妻无码| 亚洲成AV人最新无码| 少妇高潮喷水惨叫久久久久电影| 男人J进女人P免费视频在线直播 | 国产在沙发上午睡被强| 成人区人妻精品一区二| 坐在黑得发紫的巨龙上写作业| 亚洲AV无码传区国产乱码O| 色老99久久九九爱精品| 农村人CHINESE熟女| 久久99精品国产99久久6尤物| 国产精品日本亚洲欧美| 差差差无掩盖30分钟79集| 中文字幕久久波多野结衣AV不卡| 亚洲精品午夜久久久伊人| 无码高潮少妇毛多水多水免费 | 蜜桃AV免费一区二区三区| 狠狠躁天天躁无码中文字幕图| 国产XXX69麻豆国语对白| PYTHON人狗大CSDN| 中国丰满少妇性BBBBBBBB| 亚洲国产午夜无码精品小说| 无人高清视频完整版在线观看| 日韩精品久久久久久久电影蜜臀| 妺妺坐在我腿上勃起弄了视频| 精品一区二区三区在线播放视频| 国产内射老熟女AAAA∵| 房中之术御女之功秘术| WC女厕撒尿七Ⅴ偷拍| 中文字幕亚洲乱码熟女一区二区| 亚洲色偷偷偷综合网 | 国产AⅤ无码久久丝袜美腿 | 免费看黄A级毛片| 久久久久成人片免费观看| 黑人与中国娇小美女AV在线| 国产精品久久无码不卡黑寡妇| 播放男人添女人下边视频| 999久久久精品国产消防器材| 永久免费AV网站可以直接看的| 亚洲欧美日韩国产精品一区| 亚洲AV无码乱码在线观看性色扶 | 日本丰满人妻XXXXXHD| 欧美人与动牲交A免费| 麻豆亚洲AV成人无码久久精品| 久久国语露脸国产精品电影| 含羞草四叶草三叶草| 国产日韩AⅤ无码一区二区三区| 国产99久久精品一区二区| 成人区人妻精品一区二区三区| YELLOW高清免费观看日本| 99久久精品国产一区二区三区| 中国在线观看免费高清完整版| 亚洲色大成网站WWW在线观看| 亚洲丰满少妇XXXXX高潮对白| 亚洲 日韩 欧美 成人 在线| 无码专区一VA亚洲V天堂| 无码AV中文字幕久久AV| 天美传媒MV免费观看完整| 色综合天天天天综合狠狠爱| 日韩日韩日韩日韩 日韩 日韩| 日本适合十八岁以上的护肤品一| 青青草国产成人99久久| 欧美性操大鸡狠狠| 欧美激情综合色综合啪啪五月| 免费乱理伦片在线观看八戒| 免费人成激情视频在线观看冫| 美国白人未成年RAPPER豆瓣| 噜噜狠狠色综合久色AⅤ五区| 开心亚洲五月丁香五月| 久久人人爽爽爽人久久久| 久久久一本精品99久久精品88| 久久久WWW成人免费毛片| 久久不见久久见免费影院国语 | 亚洲AV日韩AV永久无码久久| 小雪要撑破了黑人好大| 亚瑟国产精品久久| 亚洲AV无码成人精品区明星换面 | 性色AV无码专区一ⅤA亚洲| 亚洲AV成人片无码www小说| 亚洲AV成人一区二区三区在线看| 亚洲AV成人无码网站大全| 亚洲AV无码乱码在线观看牲色| 亚洲成av人在线观看| 亚洲熟妇丰满XXXXX国语| 野花香高清在线观看视频播放免费 | 国产午夜精品一区二区三区极品 | 国产午夜无码视频在线观看| 国内精品久久人妻无码| 精产国品一二三产品在哪 | 国产久9视频这里只有精品| 国产无套内射普通话对白| 狠狠色噜噜狠狠狠888米奇视频| 精品国产一区二区三区2021| 久久久久成人精品无码中文字幕| 林静公交车被做到高C| 内射人妻无码色AV无码| 欧美日韩亚洲中文字幕一区二区三| 亲情会王芳高敏大团圆| 日韩精品人妻中文字幕有码 | 人妻少妇精品视频无码综合 | 97久久精品人人澡人人爽| 俺去俺来也在线WWW色官网| 成人午夜福利无码不卡视频| 国产成人欧美一区二区三区| 国产午夜影视大全免费观看| 精品久久久久久亚洲综合网| 久久综合九色综合欧美| 男女啪啪吃奶GIF动态图| 让女人受不了19种新姿势| 色欲色香天天天综合网WWW|