微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于DSP/ARM的网络硬盘录像机的设计方案

基于DSP/ARM的网络硬盘录像机的设计方案

时间:11-13 来源:3721RD 点击:

I3512 与S3C2510 的连接方式。

2.4 电源模块

2.4.1 供电电路

整个电路板采用+5 V 电压供电,可以从外部引入,也可以从扩展的PCI 接口引入。DM642 芯片需要2 个独立的电压,CPU 内核电压GVDD(+1.4 V)和外围I/O 电压DVDD(+3.3 V)。这两个电压在供电时需要严格按照顺序进行,即GVDD 要比DVDD 上电早,至少不能晚于DVDD.设计中采用2 片TI 公司专为高性能DSP、FPGA、ASIC 和微处理器的应用而设计的电源芯片TPS54310,分别给DM642 提供CVDD 和DVDD 电压。在电路连接上将TPS54310(1)的PWRGD引脚和TPS54310(2)的SS/EN引脚相连。

当(1)的输出电压高于1.2 V 时,芯片(2)开始工作;当这个值达到稳定的+1.4 V 后,PWRGD 引脚输出高电平送到芯片(2)的SS/EN 引脚。这就保证了CPU 内核的上电时间早于I/O 的上电时间,如图3 所示:

图3 电源电路。

2.4.2 电源监测电路

为了保证DM642 芯片在电源未达到要求的电平时,不会产生不受控制的状态,而且允许系统中的各个芯片在任意时刻可以通过复位来调整工作状态,这就需要在系统中加入一个电源 监测电路,.该电路能确保在系统的加电过程中,CVDD 和DVDD 达到要求的电平之前,DSP 始终处于复位状态。选用了TI 公司生产的TPS3823-33 芯片,其固定复位信号时间长达200 ms,能满足系统中所有芯片的复位需求。芯片带有一个看门狗电路,通过WDI 引脚接收来自CPU 的定时信号,避免发生系统程序跑飞的情况。

3 系统的软件设计

3.1 系统的软件设计

该系统的软件主要包括三个部分:启动程序,内核与根文件系统,专业芯片驱动及应用。为了开发和升级 的方便,我们将根文件系统作成RAMDISK 的格式。据此我们将FlashROM 分为3 个区:1 Cramfs,2 Boot-Loader,3 Kernel+RAMDISK.本系统的启动程序用的是DENX 的U-boot-1.1.0.它的主要工作是初始化硬件,为加载操作系统准备必要的环境及其参数,同时可以与开发主机通讯,下载程序到SDRAM 和Flash.通过修改它的一些配置文件,可以完成对目标系统Memory Controller,memory map以及I/O,PCI,Flash,Ethernet controller,Serial等硬件设施的初始化。

对于芯片驱动程序的编写,一些通用设备驱动,如以太网卡驱动已经在内核中,对于系统的一些专业芯片 的驱动由于其特殊性,将其和应用做成Cramfs文件系统格式,在目标板的的操作系统启动时以module 的形式进行加载,方便修改和升级。编写驱动程序可以按照Linux 下编写驱动程序的规则来编写。编写的驱动程序应该具有以下功能:a)对设备的初始化和释放:b)数据从内核传到硬件和从硬件读取数据:c)读取应用程序传 递给设备文件的数据和回应应用程序请求的数据:d)检测和处理设备出现的错误。

设备驱动程序的实质就是中断处理。Linux 中断处理程序分为上半部和下半部。上半部即一般的中断服务程序, 由硬件中断触发,一般运行在关中断的方式下,应当尽可能的短小,处理尽可能的快:下半部运行在开中断和任务串行化的环境下,处理需要较长时间的任务。驱动 程序上半部在处理完实时性很强的任务后,用Queue-task 函数将下半部处理函数挂入立即队列,用mark-bh 函数来激活立即队列,下半部就可以最优先的被执行。

3.2 应用程序的设计

应用程序的设计可以采用多线程或者多进程的方式。多线程的优点在于线程比进程要小,可以使应用更轻 量,线程间通讯方便,缺点就在于由于线程使用同一个地址空间,如果一个线程出了问题,将可能影响到整个系统;多进程各自占有一份内存空间,因此可以增强系 统的健壮性,但是多进程增加了系统的开销,同时进程间通讯较复杂。结合我们系统的实际,考虑到各个线程通讯的重要性,我们采取多进程多线程的方式,在软件 上增加一个与主进程并行的守护进程,在硬件上设置看门狗,以增强系统的健壮性。

4 远程控制与通信链路的建立

本设计采用PPP 串行通信接口协议方式。PPP(PointtoPointProtocal,点对点协议)协议中包含3 个部分:

在串行链路上封装IP 数据报的方法;建立、配置及测试数据链路的链路控制协议(LCP);不同网络层协议的网络控制协议(NCP)。PPP 具有很多优势;支持循环冗余检测、支持通信双方进行IP 地址动态协商、对TCP 和IP 报文进行压缩、认证协议支持(CHAP 和PAP)等。

PPP 的实现可以通过2 个后台任务来完成,协议控制任务和写任务。协议控制任务控制各种PPP的控制协议,包括LCP、NCP、CHAP 和PAP.它用来处理连接的建立、连接方式的协商、连接用户的认证以及连接中止。写任务用来控制PPP 设备的数据发送。数

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top