基于FPGA的B超数字图像实时采集系统 |
时间:2011-04-24 作者:秩名 |
|
|
if (vs='1') then
Add_s<='000000';
else
if(Add_s='111111111111111111') then
Add_s<='000000';
else
Add_s<=Add_s+1;
end if;
end if;
end if;
end process;
Add<=Add_s;
process(clk)
begin
if (clk'event and clk='1') then
data_t<='0'& Dout_sram;
end if;
end process;
Din_t <= '0' & Din;
process(clk)
begin
if (clk'event and clk='0') then
data_a<=data_t+Din_t;
Din_sram<= data_a(8 downto 1);
end if;
end process;
end Behavioral;
3.2 帧存乒乓读写控制机制

图3 双帧存乒乓读写机制示意图
超声视频图像需要实时地采集并在处理后在显示器上重建,图像存储器就必须不断地写入数据,同时又要不断地从存储器读出数据送往后端处理和显示。另外,为了满足这种要求,可以在采集系统中设置两片容量一样的帧存,通过乒乓读写机制来管理,结构如图3所示。为了确保任何时刻,只能有一片帧存处于写状态,设置一个写互斥锁;同时,只能有一片帧存处于读状态,设置了一个读互斥锁。在系统初始时,一片帧存为等待写状态,另一片为等待读状态;开始工作后,两片都处于读写状态轮流转换的过程,转换的过程相同,但是两片状态相错开,这样就能够保证数据能连续地写入和读出帧存。该机制如图所示,工作流程为:
(1). 采集过程未开始,帧存A为等待写状态,获得写互斥锁;帧存B为等待读状态,获得读互斥锁。
(2). 帧存写控制器收到一帧开始信号,判断为采集开始,设置帧存A写信号WE2_A有效,帧存A开始写入当前帧数据;同时帧存读控制器设置帧存B读信号OE2_B有效,帧存B则开始读出所存数据。
(3). 一帧结束,帧存A写结束,释放写互斥锁;帧存B读结束,释放读读斥锁
(4). 等待另一帧开始,帧存A获得读互斥锁;帧存B获得写读斥锁
(5). 另一帧开始,写控制器设置帧存B写信号WE2_B有效,帧存B开始写入数据;读控制器设置帧存A读信号OE2_A有效,帧存A则开始读出数据。
3.3 DMA传输
对整个B超诊断仪来说,系统要完成视频图像数据的实时采集和指定的处理, 高性能的ARM处理器的处理能力可达每秒数百万条指令, 因此数据的传输设计是提高系统速度的关键环节。论文大全。ARM处理系统与外部的数据传输可以通过CPU访问外部存储器的方法实现, 但是效率低下, 不能满足系统实时性的要求, 而DMA 数据传输以不占用CPU 时间和单周期吞吐率进行数据传输的优点在实时视频图像采集系统中得到了广泛的应用。但是因为DMA 的传输速率和前端视频图像数据的输入速率不匹配, 很难发挥出DMA数据传输的优势。由可编程的FPGA控制SRAM组成的双帧存可以很好地解决这个问题;此外,FPGA 内部嵌入了一定数量的RAM , 可以经过配置成缓冲存储器, 通过灵活的逻辑结构可以方便地实现对输入输出数据流的控制, 成为连接ARM处理系统和SRAM的纽带和桥梁。
4 结束语
在B超数字视频图像实时采集系统中采用FPGA作为采集控制部分,首先可以提高系统处理的速度及系统的灵活性和适应性:(1)由于在FPGA和ARM处理系统之间采用SRAM做数据缓冲,并用DMA方式进行传输,大大提高了系统的性能;(2)由于采用FPGA可编程逻辑器件,对于不同的超声视频信号,只要在FPGA内对控制逻辑稍做修改,便可实现信号采集;(3)FPGA的外围硬件电路简单,因而在硬件设计中,可以大大减小硬件设计的复杂程度。而FPGA的时序逻辑调试可在软件上仿真实现,因而降低了硬件调试难度。
参考文献
1 范毅明,范世忠,李祥杰.医用B超与超声多普勒系统. 第二军医大学出版社,1999
2 张艺夕,吴鸿修.基于USB2.0的高速B型超声图像的采集传输.世界电子元器件,2005.1
3 刘德良,姚春莲,李炜,葛宝珊,刁修民.多分辨率图像实时采集系统的FPGA逻辑设计.电子技术应用,2003.3
2/2 首页 上一页 1 2 |
|
|
|