在高速数模混合的低噪声系统中,为了减少数字系统的噪声,在保证系统可靠性的同时,考虑到现场可编程门阵列(Field-Programmable Gate Array,FPGA)有限资源的分配,可在32位嵌入式可编程片上系统(System-on-a-Programmable-Chip,SOPC)中使用16位静态随机存储器(Static Random Access Memory,SRAM)。由于构成SOPC框架时没有这种16位静态随机存储器的成型组件,必须自行创建。根据Avalon总线规范,讨论了构成16位静态随机存储器组件的方法,通过Verilog HDL编程,实现了这一16位的静态随机存储器组件,并将其用在一个高速低噪声的天文成像系统中。
For reducing the level of noise coming from a digital sub-system in a high-speed low-noise digital-analog hybrid system while ensuring the reliability of the system with the allocation of limited resources in an FPGA,a 16-bit SRAM can be used in a 32-bit embedded SOPC system.However,it is necessary for users to create a new component for the 16-bit SRAM since there is no such an unusual component in a 32-bit SOPC framework built in the Quartus II IDE.According to the Avalon bus specification,we present a method to build the 16-bit SRAM component via the Verilog HDL programming.We first briefly introduce the structure of the SOPC and its interfaces in our FPGA board.We then describe the design techniques for the 16-bit SRAM component,including the determination of rules of reading,writing,chip selecting,and bit-width parametric processing of data.We give the details about the procedure of creating the component in the Quartus II IDE,including definitions of the SRAM signal associated interfaces,and corresponding timing setup.The Verilog program is listed and the method for determining values of the read and write timing parameters related to a specific SRAM is illustrated.The component has been implemented and used in a Quartus project for an astronomical EMCCD camera.We present the measurements of some waveforms generated by an EMCCD timing generator in our FPGA.These waveforms are consistent with our simulations,indicating that the 16-bit SRAM component and the entire system are working properly.We also discuss some possible applications of the 16-bit SRAM component.