环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產品分類

當前位置: 首頁 > 工業電子產品 > 半導體產品 > 微控制器MCU

類型分類:
科普知識
數據分類:
微控制器MCU

80C186XL嵌入式系統中DRAM控制器的CPLD解決方案

發布日期:2022-04-22 點擊率:34

                   摘要:介紹怎樣在嵌入式CPU 80C186XL DRAM刷新控制單元的基礎上,利用CPLD技術和80C196XL的時序特征設計一個低價格、功能完整的DRAM控制器的方法,并采用VHDL語言編程實現。

關鍵詞:刷新控制單元(RCU) DRAM控制器 狀態機 CPLD VHDL語言

    80C186XL16位嵌入式微處理器是Intel公司在嵌入式微處理器市場的上導產品之一,已廣泛應用于電腦終端、程控交換和工控等領域。在該嵌入式微處理器片內,集成有DRAM RCU單元,即DRAM刷新控制單元。RCU單元可以自動產生DRAM刷新總線周期,它工作于微處理器的增益模式下。經適當編程后,RCU將向將處理器的BIU(總線接口)單元產生存儲器讀請求。對微處理器的存儲器范圍編程后,BIU單元執行刷新周期時,被編程的存儲器范圍片選有效。

    存儲器是嵌入式計算機系統的重要組成部分之一。通常采用靜態存儲器,但是在系統需要大容量存儲器的情況下,這種方式將使成本猛增。如果采用DRAM存儲器,則可以大幅度降低系統設計成本;但DRAM有復雜的時序要求,給系統設計帶來了很大的困難。

    為了方便地使用DRAM,降低系統成本,本文提出一種新穎的解決方案:利用80C186XL的時序特征,采用CPLD技術,并使用VHDL語言設計實現DRAM控制器。

一、80C186XL RCU單元的資源

    80C186XL的BIU單元提供20位地址總線,RCU單元也為刷新周期提供20位地址總線。80C186XL能夠產生刷新功能,并將刷新狀態編碼到控制信號中。


    圖1是RCU單元的方框圖。它由1個9位遞減定時計數器、1個9位地址計數器、3個控制寄存器和接口邏輯組成。當RCU使能時,遞減定時計數器每一個CLKOUT周期減少1次,定時計數器的值減為1時,則產生刷新總線請求,遞減定時計數器重載,操作繼續。刷新總線周期具有高優先級,旦 80C186XL總線有空,就執行刷新操作。

    設計者可將刷新總線周期看成是“偽讀”周期。刷新周期像普通讀周期一樣出現在80C186XL總線上,只是沒有數據傳輸。從引腳BHE/RFSH和A0的狀態可以判別刷新周期,如表1所列。刷新總線周期的時序要求如圖2所示。



表1 刷新周期的引腳狀態



二、80C186XL DRAM控制器的設計與運行

    DRAM存在著大量、復雜的時序要求,其中訪問時間的選擇、等待狀態以及刷新方法是至關重要的。DRAM控制器必須正確響應80C186XL的所有總線周期,必須能將DRAM的部周期和其它訪問周期分辨出來,其訪問速度必須足夠快,以避免不必要的等待周期。

    在設計時,我們采用XC95C36-15 CPLD[2]以及4Mbits的V53C8258[3]DRAM作范例。15ns的CPLD,速度相對較高,價格比較便宜。用它設計成的DRAM控制器允許80C186XL的工作速度高達20MHz,并且XC95C36有異步時鐘選擇項。這種特性對本設計有很大的好處。
    圖3是80C186XL DRAM控制器和存儲器的功能框圖。


    DRAM控制器由80C186XL狀態信號S2、S1和S0的解碼來檢測總線的開始、類型和結束。這些狀態線是在CLKOUT的上升沿開始有效,在CLKOUT的下降沿失效的。DRAM控制器發出的RAS和CAS信號應該在CLKOUT的下降沿同時有效,行列地址應該在CLKOUT上升沿附近提供。

    DRAM控制器應該在CLKOUT的兩個沿都應能正常操作。通過啟用XC95C36的異步時鐘選擇項,每個XC95C36宏單元可以從可編程與陣列獲得時鐘。DRAM控制器使用80C186XL的CLKOUT信號作時鐘輸入。

    DRAM控制器主要由兩個相互聯的狀態機構成。這兩個狀態機,使得DRAM的控制與80C186XL是否進行等待狀態無關。狀態機A和地址多路控制信號(MUX)在CLKOUT的上升沿鎖存。狀態機B和RAS及CAS的邏輯在CLKOUT的下降沿鎖存。DRAM控制器完整的VHDL語言的源代碼可 Email給cnhsx@sina.com索取。

    DRAM控制器的狀態圖如圖4所示,狀態機A和B的起始條件分別是A0和B0。狀態機A初始化DRAM控制器的序列,狀態機B終止該序列。

    在T2的下降沿,RAS邏輯采樣狀態機A的狀態,鎖存的地址線和總經狀態信號。如果狀態機A在A1狀態(存儲器讀、寫或刷新周期)并且總線周期為DRAM使用,則XC95C36插入RAS信號。

    在T2的上升沿,狀態機A也采樣鎖存的地址線。如果總線周期被DRAM占用,狀態機A將從狀態A1轉移到A2,否則狀態機A轉換到A3。至此控制轉移到狀態機B。MUX邏輯采樣RAS和BHE引腳的狀態。如果RAS有效(指示DRAM在訪問),并且總線周期下是刷新周期,XC95C36將插入 MUX。MUX在行列地址之間切換,以便進行DRAM的讀寫操作。

    在T3的下降沿,狀態機B采樣狀態機A。如果狀態機A處于狀態A2(DRAM訪問)或狀態A3(存儲器讀或寫,但不是DRAM訪問),狀態機B從狀態B0轉到B1。如果總線周期是一個DRAM訪問周期,XC95C36繼續保持RAS有效。CAS邏輯采樣MUX的狀態、鎖存地址A0、BHE和總線周期狀態。如果MUX有效(指示DRAM讀或寫),并且訪問低字節,則XC95C36插入LCAS;如果MUX有效,并且微處理器訪問高字節,XC95C36插入UCAS。DRAM讀訪問和DRAM刷新訪問不同之處在于:對刷新來說,不需要MUX、UCAS和LCAS。

    在T3的上升沿,狀態機A等待狀態機B中斷此序列。如果MUX有效(DRAM讀或寫),它將保持有效。

    有下一個降沿,狀態機B采樣總線狀態信號。如果狀態信號仍然有效,則此狀態為等待狀態Tw,狀態機B保持在狀態B1。如果這個狀態是等待狀態,并且RAS有效(DRAM訪問),RAS保持有效;如果狀態為等待狀態,并且UCAS和LCAS有效(DRAM讀或寫),UCAS和LCAS保持有效。

    在等待狀態的上升沿,狀態機A繼續等待狀態機B來中斷此序列。如果MUX有效(DRAM讀或寫),則它在T3狀態里保持有效。

    如果微處理器狀態信號無效,這個狀態則是一個T4狀態,狀態機B從B1轉到B2.如果狀態是一個T4狀態,并且RAS有效(DRAM訪問),則 RAST4狀態,并且RAS有效(DRAM訪問),則RAS邏輯也檢測無效狀態信號,并且XC95C36關閉RAS信號;如果狀態是一個T4狀態,并且 UCAS和LCAS有效(DRAM讀或寫),則CAS邏輯也采樣總線狀態信號;如果狀態信號無效,則XC95C36關閉UCAS和LCAS信號。

    在T4的上升沿,狀態機A采樣狀態機B的狀態。在狀態機B處于B2狀態的情況下,狀態機A從A2狀態(DRAM訪問)或A3狀態(存儲器讀或寫,但不是DRAM訪問)轉到A0。如果MUX有效,MUX邏輯檢查RAS的狀態;如果RAS無效(指示一個終止周期),XC95C36關閉MUX。

    在下一個CLKOUT下降沿,狀態機B無條件地從狀態B2轉到B0,終止DRAM序列。控制轉移給狀態機A。


三、80C186XL RCU單元的編程

    要使DRAM正常工作,就必須對80C186XL中與DRAM刷新有關的寄存器進行正確編程。這些寄存器包括:刷新時鐘間隔寄存器(RFTIME寄存器)、刷新基地址寄存器(RFbase寄存器)和刷新控制寄存器(RFCON寄存器)。

    刷新時鐘間隔寄存器(RFTIME寄存器)的編程公式為:Trefresh×fcpu/(Rrow+Rrows×補償因子)。V53C8258的技術參數規定,其刷新周期Trefresh為8ms,存儲陣列行數Rrows為512??紤]到RCU取得總線控制權的延時,補償因子取0.05。因此,微處理器在fcpu=20MHz工作頻率下,RFTIME寄存器的取值為:0.008×20×10 6/(512+512×0.05),約為297.

    刷新基地址寄存器(RFbase寄存器)的編程。該寄存器的高7位,規定了DRAM容量大小。系統使用兩片V53C8258情況下,RFbase的取值為00H,DRAM占用微處理器的存儲空間的00000H~7FFFFH(512KB)。

    最后通過將刷新控制寄存器(RFCON寄存器)的REN位置位,來啟動刷新控制單元。

    若使用80C186XL的節電模式,則要求重新編程這些值。在寫節電控制寄存器前,必須先用要時鐘分頻值去除原先設置在刷新間隔寄存器的值,來重新設置寄存器。

四、結束語

    現在DRAM、CPLD的價格非常低,這樣設計者有機會在嵌入式計算機系統設計中考慮采用DRAM。80C186XL嵌入式微處理器廣泛應用于嵌入式計算機、程控通信和工業控制系統中,具有良好的性價比,其性能和功能是80C31、80C196等單片機無法比擬的,并能充分利用大量的PC平臺軟件。本解決方案已在家庭電子證券產品中采用,獲得了良好的經濟效益和社會效益。

    掌握CPLD技術和VHDL語言設計技巧是提升產品技術含量的重要途徑。上述CPLD還留在一些引腳和內部資源未使用,只要設計者將VHDL源代碼稍微作一些修改,就可以用這些引腳控制新增加的DRAM,提供總線準備輸出信號或DMA響應信號。

    如果采用引腳數和宏單元較多的XC9672或XC95108CPLD,就可以將D觸發器(74HC74)、多路地址切換器(74HC157)、數據收發器(74HC245)和地址總線鎖存器(74HC373)等其它分立邏輯器件的功能全部集成到CPLD中,這樣系統集成度和可靠性將更加提高。

 

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
主站蜘蛛池模板: 专业的新乡振动筛厂家-振动筛品质保障-环保振动筛价格—新乡市德科筛分机械有限公司 | 合肥废气治理设备_安徽除尘设备_工业废气处理设备厂家-盈凯环保 合肥防火门窗/隔断_合肥防火卷帘门厂家_安徽耐火窗_良万消防设备有限公司 | 德国GMN轴承,GMN角接触球轴承,GMN单向轴承,GMN油封,GMN非接触式密封 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 铝合金线槽_铝型材加工_空调挡水板厂家-江阴炜福金属制品有限公司 | 合肥升降机-合肥升降货梯-安徽升降平台「厂家直销」-安徽鼎升自动化科技有限公司 | 行吊_电动单梁起重机_双梁起重机_合肥起重机_厂家_合肥市神雕起重机械有限公司 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 | NMRV减速机|铝合金减速机|蜗轮蜗杆减速机|NMRV减速机厂家-东莞市台机减速机有限公司 | sus630/303cu不锈钢棒,440C/430F/17-4ph不锈钢研磨棒-江苏德镍金属科技有限公司 | 车牌识别道闸_停车场收费系统_人脸识别考勤机_速通门闸机_充电桩厂家_中全清茂官网 | 上海物流公司,上海货运公司,上海物流专线-优骐物流公司 | 导电银胶_LED封装导电银胶_半导体封装导电胶厂家-上海腾烁 | 全自动过滤器_反冲洗过滤器_自清洗过滤器_量子除垢环_量子环除垢_量子除垢 - 安士睿(北京)过滤设备有限公司 | 非小号行情 - 专业的区块链、数字藏品行情APP、金色财经官网 | 山东集装箱活动房|济南集装箱活动房-济南利森集装箱有限公司 | 老城街小面官网_正宗重庆小面加盟技术培训_特色面馆加盟|牛肉拉面|招商加盟代理费用多少钱 | 焊接减速机箱体,减速机箱体加工-淄博博山泽坤机械厂 | IIS7站长之家-站长工具-爱网站请使用IIS7站长综合查询工具,中国站长【WWW.IIS7.COM】 | 上海瑶恒实业有限公司|消防泵泵|离心泵|官网 | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 实验室隔膜泵-无油防腐蚀隔膜泵-耐腐蚀隔膜真空泵-杭州景程仪器 电杆荷载挠度测试仪-电杆荷载位移-管桩测试仪-北京绿野创能机电设备有限公司 | 济南办公室装修-厂房装修-商铺装修-工装公司-山东鲁工装饰设计 | 磁力抛光机_磁力研磨机_磁力去毛刺机-冠古设备厂家|维修|租赁【官网】 | 超声骨密度仪-动脉硬化检测仪器-人体成分分析仪厂家/品牌/价格_南京科力悦 | 合景一建-无尘车间设计施工_食品医药洁净车间工程装修总承包公司 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 | 细石混凝土泵_厂家_价格-烟台九达机械有限公司 | 江苏南京多语种翻译-专业翻译公司报价-正规商务翻译机构-南京华彦翻译服务有限公司 | 密集架-手摇-智能-移动-价格_内蒙古档案密集架生产厂家 | 广州监控安装公司_远程监控_安防弱电工程_无线wifi覆盖_泉威安防科技 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 仓储笼_仓储货架_南京货架_仓储货架厂家_南京货架价格低-南京一品仓储设备制造公司 | 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 软膜天花_软膜灯箱_首选乐创品牌_一站式天花软膜材料供应商! | 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 蓄电池在线监测系统|SF6在线监控泄露报警系统-武汉中电通电力设备有限公司 | China plate rolling machine manufacturer,cone rolling machine-Saint Fighter | 珠宝展柜-玻璃精品展柜-首饰珠宝展示柜定制-鸿钛展柜厂家 | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 |