AI880A 3BSE039293R1
ABBAI880A3BSE039293R1随着数字信号处理技术的不断发展,大容量可编程逻辑器件的不断涌现,FPGA技术越来越多地应用在大规模集成电路设计中。在此硬件系统设计中,经常会遇到需要大容量的数据存储的情况,下面我们将针对FPGA中内部BlockRAM有限的缺点,提出了将FPGA与外部SRAM相结合来改进设计的方法,并给出了部分VHDL程序。2硬件设计这里将主要讨论以Xilinx公司的FPGA(XC2S600E-6fg456)和ISSI公司的SRAM(IS61LV25616AL)为主要器件来完成大容量数据存储的设计思路。FPGA即现场可编程门阵列,其结构与传统的门阵列相似,大量的可编程逻辑块(CLB,ConfigurableLogicBlock)在芯片中央按矩阵排列,芯片四周为可编程输入/输出块(IOB,Input/OutputBlock),CLB行列之间及CLB和IOB之间具有可编程的互连资源(ICR,InterConnectResource)。CLB、IOB和ICR都由分布在芯片中的SRAM静态存储单元控制,SRAM中的数据决定FPGA的功能,这些数据可以在系统加电时自动或由命令控制从外部存储器装入。在进行数据存储时,可直接将数据写入FPGA内部的BlockRAM中,在一定程度上减少了FPGA的资源分配。但FPGA内部自带的RAM块毕竟是有限的,当需进行大容量数据存储时这有限的RAM块是远远不能满足系统设计要求的。此时,就需要将FPGA与外部RAM相结合完成大容量数据存储。具体硬件电路如图一所示:具体硬件电路3IS61LV25616AL功能简介IS61LV25616AL是IntegratedSiliconSolution公司(ISSI)的一款容量为256K×16的且引脚功能完全兼容的4Mb的异步SRAM,可为Xilinx公司的Spartan-2E系列FPGA提供高性能、高消费比的外围存储。除了256K×16异步SRAM外,ISSI还提供128K×16、512K×16、256K×8、512K×8和1M×8的异步SRAM。IS61LV25616AL引脚结构框图如图二所示:IS61LV25616AL引脚结构框图3.1主要特征(1)工作电压:3.3伏;(2)访问时间:10ns、12ns;(3)芯片容量:256K×16;(4)封装形式:44引脚TSOPII封装,也有48引脚mBGA和44引脚SOJ封装;(5)采用0.18μm技术制造。3.2引脚功能(1)A0~A17:18位的地址输入线;(2)IO0~IO15:16位的三态数据输入输出线;(3)写控制线;(4)片选信号;(5)输出使能信号;(6)低字节、高字节使能信号;(3)~(6)的控制线均为低电平有效。3.3控制逻辑电路设计如图三所示,控制逻辑由FPGA来实现。主要包括读地址产生器、写地址产生器、读写时钟信号产生器及读写控制等几部分。下面分别加以讲述。控制逻辑电路(1)写地址产生器:由于设计时采用256K×16的SRAM,故有18位地址,写地址产生器用18位计数器实现。靠外部时钟驱动,每进行一次写操作后,读写控制单元产生计数脉冲,使其增1,直到18位计数器计满再循环写入地址为0的空间。(2)读地址产生器同上,也采用18位计数器实现,根据系统要求,每隔一定的采样周期将读地址指针偏移一定偏移量,并从该位置读取数据。(3)读写地址选择器由于读写地址复用管脚,因此在读写操作时,必须选通相应的地址。这就需要由FPGA控制芯片上的等控制信号来对SRAM进行读写的操作。(4)此外,由于读写之间的切换,数据线上的数据在切换瞬间如不加处理会出现混乱现象。因此,为避免读、写操作发生冲突,数据线呈三种状态,读数据、写数据及高阻态。在从写到读的过程中需给数据线上送高阻态。(5)当需要对SRAM进行写操作时,由FPGA控制产生写地址选通信号,该选通信号为一单脉冲形式,如图四中该脉冲下降沿触发SRAM,告知开始对RAM进行写操作,使FPGA输出写地址,同时给数据线上送数据。在写操作期间,片选信号始终保持低电平,而写地址选通信号上升沿到来时使写地址计数器增1。以此类推,通过写地址选通信号高低电平变化完成对数据依次写入。需要注意的是,地址线和数据线在为高时可同时赋新值,但只有在变低后赋予数据线上的新值才有效。1756-CNB1756-CP31756-DNB1756-ENBT1756-IB16I1756-TBCH1756-IF162711-K6C15SVNM-DPAFVR008E7S-2140CPU11303140CRP81100140DDI84100140DRA840001756-BA21756-L61B1756-PA75B4KS-M240/201784-PKTX1784-PKTX1B30035H011C31194G011C31197G011747-L542DSQC6623HAC026054-001GSK3LBGSK3LBDSQC327ADSQC328AE30004380ARD-023MS140DAI74000140CRP811006AV3503-1DB101485A-C21746-P31747-L5321747-L5511747-L5531747-SDNA06B-6114-H106KSD1-08KSD1-32KSD1-48MSD083A1XXA03B-0819-C161FBM201卡件与接线端子FBM207C卡件与接线端子JANCD-XI0O2JANCD-XIO01BP0904HAA02B-0259-C2211C31116G041756-IF8140CPU651501771-IFE1756-IF16MSR6R/T6ES5948-3UR23Z4LC-C281394-SJT05-C-RLA20B-2002-0031/03C1746-IB321746-NI16I1746-P41492-IFM40D24140CPU67160IC697ALG230IC697ALG320IC697BEM731PCG5501746-NI81746-NR81771-ID01PH265-02(MDVX-100B)140CPS11420140CRA931001769-L32E1769-PA21769-PA4140XBE10000140ARI03010140CPU31110140NOE77101140CPS11420140CRA93100A03B-0819-C185A03B-0823-C003140DDO35300A06B-6093-H1526SN1145-1AA01-0AA2INNIS21A20B-2101-0012/04BRP0911PV6RB2100-ONA111756-L63B140ARI03010140CPS11420NT600044618-120ZW-102PM1756-BA1140CRP81100IMMFP01140DDO35300140CPU53414A1746-A101746-A7140DRA840001B30035H011C31129G031C31132G011C31224G01/1C31227G011C31234G01/1C31238H01PCD2.M120TM-200140CPS11420FBM04P0400YEP0500RY140ACO02000140CPS21400140CPU67160140CRP93200140NOE77101TSXAEY810TSXASY80051196694-300/U1140DAI35300140DRA84000140ACI04000140ACO13000140CPS11420140CPU31110140XBP01000140XTS00200140ACI04000140ACO13000140DRA840001756-HSCTSXAEY16003UF5011-3AB00-11794-IB321756-OF41756-A101756-OB16IJUSP-OP05A1203-CN11203-SG26GK1105-2AA101746-N04V140ARI03010140ACI03000A860-2109-T3021756-PA75PTQ-PDPMV1140DAI75300140ACO13000140CPS11420140CPU43412A140CRA93200140CRP81100140CRP93200140DAO85300140DDO35300140ACI03000140CPU67160FBM07PH566H-B1756-OF8IC200ALG260AIC200ALG320IC200ALG620IC200CBL600BIC200MDL650IC200MDL740IC200PWR1016ES5135-3KB13ROD700.0000-1800ID:20374161CI853K013BSE018103R1140DDI35300140DDO35300140DRA84000140CPU65150140XBP01000FCM10E1C31116G04PC-TIO-10181197-01REV140DAO853001746-P2578785-011756-ENBT/ADAI03DAO01DLM02DPW031787-DNPSDB-2620A1785-KE6FC5357-0BB35-0AA06ES7414-3EM05-0AB0TSXAEY1600140CRP811001769-L32E140ACI04000IC698PSA350140CPU65150140DDO35300AIM-S-NW25D14641000TP270-10LS6804-I400ARS-232CA860-2020-T301140ACI030001746-IB161756-IB32/B1756-OB32/A140CRP93200140NOE771011746-IB321756-IF161756-OF81756-TBCHAI775140DDO35300CMLH-11-150S06140ACI040001769-L32E1756-CNB1794-IV16140NOE77101140CHS11000140CPU67160GF1-10TVD-102MC05001000000140CPU67160140CRP81100DIGIFAS7100DIGIFAS7105DIGIFAS7116-L2-DP3HAB8101-193HAB8101-35086-17021756-OB321746-OW161746-P41746SC-INI4VI1746-A101746-OV8LR3-0201MDF60A-0022-5A3-4-00MDV60A-0075-5A3-4-001787-DNPS1746-A71746-IB321746-N21746-NI41746-NO4V1746-OB321746-P11747-CP31747-L541140CPS114201747-L5516AV3503-1DB10140ACI04000140ACO13000140CPS11420140XBP01000140XTS00200140CRA93200140CRP932001769-L32E1756-DNB1756-IF161756-L611756-OF81769-PA21769-L32E1747-L532A860-2000-T3011747-L542120NQ045R1746-NI8140CRA93200IPM240-5E1756-OF82711-K9A1V4550220-01001747-L5411746-IB161746-P2IC697ALG4401756-TBCH1756-TBNH140CPS11420140XTS00200140XBP006001C31129G031C31132G015X00070G04/1C31116G04CPCI-354T-120316182-1PTQ-PDPMV1SNAP-AITM-2A9GTMEM-20MF140CPU31110P03-CPU21(V:2.5)1746-P41747-L542140CPU65150140DDO35300MK3H120141746-P21747-L5421756-L611756-N21756-OB32MVI56-MCM1747-L542140ARI03010VW3A11013700AFQM1S-MC2331756-CNB1756-L61EM210-20PCI-2726CM1756-L632801-YJC1785-L40B/E1746-OW161769-IQ321769-L32E1786-TPYR1746-IV16CPCI-38401747-L551DSAI130D(3BSE003127R1)"DSTD108P(3BSE018333R1)"CS512DCN3BUR980009R1PU512V2TC530FBM217F62171746-IM161746-NI41746-NO4I1746-NO4V1746-OW161746-P41747-ASB1747-L5421747-SN2711-K9A11746-IB16)