0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于SCSI总线控制器和单片机实现图像数据采集系统的设计

电子设计 来源:单片机与嵌入式系统应用 作者:曾峦;熊伟;赵忠 2020-07-01 08:00 次阅读

引言

目前,对高速数字图像的采集与存储的需求越来越大,但大多数此类系统都依赖速微机、高速图像采集卡和超大容量内存。满足这些条件必然使成本成倍增高,价格昂贵,且它有一个很大的缺点是容量小,即便是使用超大容量内存,其增扩的容量也只能达到几G字节的量级,如果再增大容量,系统的体积和成本已不允许。因此,应用范围受到限制。

基于冗余磁盘阵列RAID (Redundant Arrays of Inexpensive Disks)技术的应用日渐广泛。虽然它利用了磁盘的超大容量、体积小巧的优势,通过磁盘阵列结构解决了快速CPU和慢速的磁盘I/O之间的“瓶颈”难关,达到了高速大容量存储的目的;但是它结构复杂,磁盘冗余导致成本较高。

为了充分发挥各种技术的优势,本文基于SCSI总线的理论体系,设计出一种以SCSI硬盘为存储载体,由单片机控制的超高速、数字化图像数据采集与存储系统。超高速是指它能够实时存储千帧每秒的视频图像,数据率约是100Mb/s;数字化是指从高速相机的输出全为数字化,存储也全为数字量。它能脱离微机系统而单独完全采集存储的工作,操作简单而实用。下面从技术方案和体系结构来介绍本系统。

一、系统的技术方案及体系结构

对于超高速、大容量实时视频图像存储系统,存储时间和速率是最高要的技术指标,但存储介质的长时间的传输速率,即它们的持续传输速率又是最重要的。存储介质的猝发传输速率和内部传输速率都不能作为实时存储系统的衡量指标。普通的IDE接口硬盘,虽然其猝发传输速率和总线传输速率都能在33Mb/s以上,但实际上持续传输速率还不到5Mb/s,远不能达到要求。相比之下,SCSI硬盘的持续传输速率明显高于IDE接口硬盘。目前,10000转的SCSI硬盘的持续传输率大多数都能达到25Mb/s。如果让几个SCSI硬盘并行工作,那么总的传输率达到100Mb/s是可以实现的。

1.SCSI总线系统及特点

SCSI (Small Computer System Interface),即小型计算机系统接口,是美国ANSI9.2委员会定义的计算机和外设之间的接口标准。起初是以磁盘存储设备为主,但由于它的灵活性、设备独立性等特点,使SCSI不仅在磁带设备、打印设备、CD-ROM WORM等外设中得到普遍应用,也在许多新I/O设备和计算机网络、计算机工业控制等领域不断发展。图1是SCSI典型的系统结构图。

在SCSI 系统中,多个设备可以用同一电缆相连。在8位SCSI数据线情况下,可以挂接8个外设;而现在的Ultera SCSI可以达到32位数据线,能挂接32个外设。在任意时刻,只能有两个设备可相互通信,其中发送命令的设备叫启动设备(initiator),执行命令的设备叫目标设备(target)。SCSI上设备的唯一标识是SCSI ID,它既是设备的地址,也是设备优先级代码。SCSI中的操作是由启动设备启动的,启动设备先选择一个目标设备,在目标设备选择完成后,目标设备在协议上获得对总线的控制权,由目标设备决定是继续控制总线还是释放总线。SCSI设备之间没有主从关系,一个设备既可成为启动设备,也可以起目标设备的作用。计算机上的SCSI适配器是典型的启动设备。SCSI接口硬盘是典型的Target。在SCSI总线上,可以存在于多个启动设备和多个目标设备,但一个系统中至少应该有一个启动设备和一个目标设备。图1是典型的多启动设备多目标设备系统。除此之外,还有单启动设备多目标设备、单启动设备单目标设备。本文的高速数据存储系统采用单启动设备目标设备系统结构。

基于SCSI总线控制器和单片机实现图像数据采集系统的设计

SCSI接口硬盘除了有上述优点外,它另一特点是在标识硬盘扇区时使用了线性的概念,即硬盘只有第1扇区、第2扇区……第n扇区,不像IDE硬盘“柱面/ 磁头/扇区”的三维格式。这种顺序编排扇区地址的优点是访问延时最小,可加快硬盘存取速率,尤其在大容量的持续数据的传输中,这种线性编排的方式所显现的优势是明显的。如IBM生产的DMVS-09V型硬盘,其持续传输速率理论上可达到29.5Mb/s。目前的操作系统的内部也使用线性编号的扇区,其目的是加快介质存取速度,加大介质访问容量。

SCSI虽然有其独有特点,但接口控制复杂。任何一个SCSI系统都具有适配器和控制器相配对的结构,通常适配器就是上面所说的启动设备。适配器的复杂性在于必须从硬件和软件两部分实现SCSI设备与各种操作系统的接口。软件要完成把SCSI命令解释给操作系统和把操作系统的操作命令翻译给SCSI设备;硬件要完成SCSI总线的各种时序和内部电路的控制。

2.系统方案的制定

根据SCSI协议,消息、命令、数据、状态四个阶段统称为信息阶段,这是因为它们都是通过数据总线传送数据和控制信息的。其中消息、命令和状态的传输采用异步方式,数据的传输可用异步和同步两种方式。

理想情况下,异步传输一个字节只需要一个系统平衡延时加一个电缆延时差,其时值为45ns+4ns=49ns,实际上应考虑信号的跳变时值和总线传输延时。分析认为,异步方式下,传输一个字节需要4个跳变加上它们在电缆上的传输延时。其典型传输时间可以计算为

t=45.25L+430

其中,t为一个字节的传输时间,单位为ns;L为电缆长度,单位为m。在电缆为1m长的情况下,传输速率约为7.1Mb/s。

同步传输机制引入了同步偏移和总线缓冲的概念,即目标设备可以连续发若干个REQ信号而不需要启动设备的ACK马上回答。这样就大大减少了总线传输延时,从而提高了传输速率。因此,本系统以16位数据同步传输为基础进行设计。

结合以上的分析,实时图像数据采集存储系统可用SCSI硬盘作为存储介质;多个SCSI硬盘并行工作以求速度的成倍提高;图像数据的采集源选用高速数字相机,以千帧每秒的速率分多路输出,每路的数据宽度可以是8位或16位。再设计相应的接口控制电路控制软件,加上附属电路构成。体系结构如图2所示。

3.系统的体系结构和功能描述

(1)单片机

单片机的主要功能如下:

*对SCSI总线信息状态进行翻译、执行、管理;

*负责对主机与缓冲器、缓冲器与SCSI总线之间的数据传送控制;

*控制DMA控制器。

单片机通过缓冲器与SCSI接口控制电路交换信息,包括命令描述和状态消息等。单片机对SCSI总线的控制是通过协议控制器实现的。为了完成一个I/O进程,单片机把进程分为仲裁、选择、数据传输等阶段,并分别以相应的内部控制命令交给协议控制器执行。

(2)数字图像接口电路

主要完成视频信号的数字转换和后续的逻辑控制。另外,有时8位的数据宽度对于后面的高速存储任务来讲是不够的,必须依靠此电路来转为16位宽或32位宽。

(3)SCSI总线控制器

这是SCSI总线来操作的执行部件,一般称为适配器。SCSI总线的时序很复杂也很有规律,规律是指SCSI总线的所操作都是由8个独立的总线阶段组成的,它们分别是:总线空闲、仲裁、选择、消息、命令、数据输入、数据输出及状态阶段。它们之间的迁移有着严格的规定,图3是SCSI的阶段迁移图。适配器接受微处理器的操作指令,如仲裁、选择、失连、复位总线等。适配器是启动设备,是发出命令的一方(在微处理器控制下)。硬盘是目标设备,它的响应信息和返回状态等都由徽处理器分析,并决定适配器的下一步操作。另外,启动I/O进程,参加仲裁、竞争总线、选择目标设备等都是由微处理器控制操作的。

(4)DMA控制器

适配器中的DMA控制器,一是控制图像数字接口电路与缓冲器之间的数据传送;二是控制缓冲器和SCSI总线之间的数据传送,也可以通过缓冲器直接控制图像接口电路和SCSI总线之间的数据传送。

二、实验结果系统结构后,用IBM生产的DDRS34560型硬盘和DMVS-09V型硬盘做数据传输实验,两种硬盘的性能指标如表1所列。分析传输320MB数据和1GB数据的结果如表2所列。

用加拿大的DALSA公司的CA-D6-256型高速相机输出955帧/s的2602608bit视频图像,本系统可以实时地无压缩并行存储到多个硬盘,记录时间在30min以上。

实践证明了本文论述的超高速实时图像存储系统是能实现的。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6039

    文章

    44579

    浏览量

    636452
  • 控制器
    +关注

    关注

    112

    文章

    16398

    浏览量

    178543
  • 总线
    +关注

    关注

    10

    文章

    2891

    浏览量

    88174
收藏 人收藏

    评论

    相关推荐

    基于USB总线的高速数据采集系统

    基于USB总线的高速数据采集系统介绍了一种基于USB总线的高速数据采集系统,讨论了USB
    发表于 04-11 17:20

    基于PIC单片机USB接口的数据采集系统设计

    基于PIC单片机USB接口的数据采集系统设计 我们把所设计的数据采集系统功能分解为三大部分:数据采集
    发表于 08-23 11:30

    基于PIC单片机USB接口的数据采集系统设计

    A/D转换采集数据,暂存于数据缓冲区,再根据主机命令发给主机。这部分功能由一个单片机及接口来实现是最优方式。   
    发表于 07-02 05:07

    基于Modbus现场总线数据采集控制系统

    基于Modbus现场总线数据采集控制系统基础电路如何实现,电路图怎么设计?1.系统由一个主机和四个从机构成。其中,四个从
    发表于 06-19 21:47

    基于MSP430F449单片机和M-BUS总线实现数据采集系统的设计方案

    基于MSP430F449单片机和M-BUS总线实现数据采集系统的设计
    发表于 01-04 07:57

    如何采用FPGA和CMOS数字传感实现图像数据传输的图像监测系统

    本文提出一种采用FPGA和CMOS数字传感实现前端数据采集、利用单片机进行图像鉴别和压缩、通过以太网
    发表于 05-26 06:58

    MSP430单片机实现微波成像系统的扫描控制数据采集

    MSP430单片机实现微波成像系统的扫描控制数据采集应用MSP430单片机
    发表于 03-23 10:44 37次下载

    基于SCSI总线的实时图像数据存储系统

    超高帧频实时图像的长序列采集存储一直是难于解决的问题。本文基于SCSI 总线的理论体系,提出一种新的图像
    发表于 07-18 16:02 31次下载
    基于<b class='flag-5'>SCSI</b><b class='flag-5'>总线</b>的实时<b class='flag-5'>图像</b><b class='flag-5'>数据</b>存储<b class='flag-5'>系统</b>

    单片机系统中高速数据采集实现

    介绍一种单片机系统中 高速数据采集实现方法,在单片机与高速A/D转换之间以静态存储
    发表于 07-18 16:59 193次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>系统</b>中高速<b class='flag-5'>数据采集</b>的<b class='flag-5'>实现</b>

    C8051F021型单片机实现数据采集系统

    介绍的功角测量 数据采集 卡是采用Cygnal公司C8051F021型单片机实现的PCI总线接口卡。该卡通过2片双口RAM分别实现与GPS接
    发表于 09-29 14:31 3418次阅读
    C8051F021型<b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>

    基于STM32单片机的RS485总线分布式数据采集系统设计

    基于STM32单片机的RS485总线分布式数据采集系统设计。
    发表于 11-09 17:49 51次下载

    基于单片机与PC通信的数据采集控制系统设计研究

    基于单片机与PC通信的数据采集控制系统设计研究
    发表于 01-24 17:03 19次下载

    STM32单片机的存储式数据采集系统设计

    STM32单片机的存储式数据采集系统设计
    发表于 09-20 08:28 42次下载
    STM32<b class='flag-5'>单片机</b>的存储式<b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>设计

    使用单片机进行多路数据采集系统设计的详细资料说明

    数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机 AT89S52 来实现
    发表于 06-25 08:00 6次下载
    使用<b class='flag-5'>单片机</b>进行多路<b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>设计的详细资料说明

    单片机数据采集系统PCB板制作

    单片机数据采集系统PCB板制作(pic单片机论坛)-该文档为单片机数据采集
    发表于 07-22 10:17 34次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>PCB板制作