研芯科技拥有10年芯片解密抄板的经验

快速芯片解密公司

主营IC解密、芯片解密、单片机解密

---专业提供PCBA一站式的服务商---

24小时解密热线

13689505886

打开客服菜单
业界资讯
您的位置 : 芯片解密首页 > 业界资讯 > pcb抄板方法 基于嵌入式操作系统在高速实时信号处理系统中的设计应用

pcb抄板方法 基于嵌入式操作系统在高速实时信号处理系统中的设计应用

时间 : 2020-03-20 10:22 浏览量 : 29

基于嵌入式操作系统在高速实时信号处理系统中的设计应用

基于嵌入式操作系统在高速实时信号处理系统中的设计应用

1系统硬件设计与实现

vg4是sbs公司的一款专门针对工业控制设计的嵌入式计算机。vg4的处理器采用motorolapowerpc755,主频400mhz,拥有64mbsdram,16mbflash用来固化操作系统和应用程序,而且提供了丰富的接口。vxworks操作系统及其应用程序在vg4上运行。由于目标机vg4的资源有限,程序的开发由主机的交叉开发平台tornado完成,通过串口和以太网下载目标代码并调试。程序开发完成后可以固化在目标机vg4的flash上,这样系统每次启动就从flash加载程序。操作系统应用程序的开发主要采用c语言。系统的数据流如图1所示。

本系统硬件基于6u的vme总线设计,由多个子模块组成,包括a/d采样板、信号处理板、定时接口板、嵌入式计算机vg4。

1定时接口板的设计

定时接口板通过vme总线与vg4进行数据传输。vme总线是一种高性能的背板总线,由于采用高电流总线信号、严密的逻辑仲裁,所以具有极强的总线驱动能力及较长的信号线传输路径,可支持21个vme板卡的直接相连,信号可靠性非常高。vme总线由于其信号的高稳定性、并行性和高可靠性,被广泛应用于多dsp系统中。

2信号处理板的设计

雷达信号处理的实时性和连续性要求处理系统应具有较高的数据处理能力。本系统设计时采用多片dsp构成并行处理系统,以提高系统的数据处理能力。信号处理系统核心单元是美国analogdevicesinc公司生产的adsp-ts1,其峰值运算能力可达18亿次/秒。它采用了改进的静态超标量流水结构,可以构成各种不同的并行多处理器系统,较好地满足了雷达信号处理的要求。

为了保证系统的数据吞吐能力,采用数据入口与出口分开的方法,系统中各dsp分别接收处理位于不同时间段的雷达回波信号。为了使各dsp协调工作,dsp间的通信必不可少。本系统采用共享总线的分布式结构,使得各dsp之间的通信有多种途径。为了信号处理板的通用性和灵活性,设计由四片dsp组成的共享总线结构子板,各dsp间用链路口点对点环形相连,将各信号线通过pmc插槽引出,与母板通信。信号处理板结构如图3所示。

vxworks是实时多任务操作系统,它能在确定的时间内执行其功能,并对外部异步事件作出响应。多任务环境允许一个实时应用划分为多个独立任务运行,各任务有各自的线程和系统资源。vxworks实时操作系统由多个相对独立的目标模块组成,用户可根据需要选择适当模块来裁剪及配置系统,从而有效地保证系统的安全性和可靠性。这样,通过目标模块之间的按需组合,可得到许多满足功能需求的应用。

下面介绍vxworks的技术特征。

任务

在vxworks中,最小的程序运行单位称为任务(task)。建立任务时,要对其分配一段固定的代码和数据空间。操作系统内核通过任务控制块对它的执行、通信、资源等情况进行控制。任务具有就绪、阻塞、挂起和延迟等状态。与大多数嵌入式系统一样,在vxworks中,所有任务存在于统一的线性空间中共享物理内存,每个任务没有自己独立的代码段和堆,只有独立的动态栈,任务中的地址即是真正的物理地址。由于不需要进行地址空间映射,所以任务切换时的上下文切换(contextswitch)时间大为减少,从而符合实时操作系统快速响应的原则。vxworks的代码段与堆共享减少了上下文切换时间,却带来了共享代码的可重入性问题。如一个函数被两个任务调用,当其中包含对全局、静态变量等从堆中分配空间的数据进行访问时,就有可能产生冲突,从而引发错误。这个问题在应用软件开发时要加以注意,其解决方法是使用局部变量(从栈中分配空间)或使用互斥信号量对临界代码进行保护。

任务调度

vxworks有优先级抢占调度和时间片轮转调度两种任务调度策略。系统共有256个优先级。优先级抢占调度指一个优先级较低的任务正在执行中,另一个优先级高的任务进入就绪状态,则马上抢占处理器资源,执行高优先级任务,直到高优先级任务释放处理器(完成、挂起、阻塞等)才继续执行被中断的低优先级任务。优先级抢占调度可以保证实时系统的迅速响应特性,但也存在问题。当系统中存在几个相同优先级的任务时,就会使单一任务独占处理器直至完成。如果这个任务占用太多时间,则会影响其他同优先级任务的运行。当加入时间片轮转调度时,系统给相同优先级的任务分配相同的一段时间片,以轮转方式占用cpu。加入了基于优先级的时间片轮转调度方式,使不同优先级的任务间以抢占方式调度,相同优先级的任务以时间片进行轮转。

存储管理

在基本的内核中,任务直接操作线性物理内存,不存在虚拟存储等复杂的存储管理策略,这主要是针对实时性考虑的。对于存在mmu的处理器中,vxworks也提供支持标准的虚拟存储区和共享内存(多处理器间共享)组件。这样任务是操作虚拟存储,代码更加安全。

任务间通信

任务间存在多种通信形式,内核支持各种unix的通用手段:信号量(semaphore)、消息队列(messagequeue)、管道(pipe)、信号(signal)、套接字(socket)。信号量主要用于对临界资源进行互斥保护及任务间或中断与任务间的同步;消息队列多用于消息驱动机制;管道是基于文件系统实现的任务间按先进先出方式传送数据的通信方式;信号相当于软中断,用于显示错误信息;套接字机制主要用于网络通信。当任务间需要大量交换数据时,由于vxworks直接操作物理内存,可以直接访问全局存储区,不需要特别的手段。这与linux下的共享存储段申请和windows中的存储映射文件方式不同。

中断

在vxworks中,所有中断服务程序都不属于任何一个任务,并且使用同一个栈进行数据存储,中断将不会引起上下文切换,以实现高效的中断响应。中断与各任务之间可以通过前面所述的各种手段通信,但是对中断服务程序有一些限制。因为中断不存在上下文切换,所以不能调用可能导致阻塞的资源。例如动态分配内存(malloc)、获取信号量(semtake)和打印程序(printf)等。中断资源宝贵,所以中断服务程序应尽量短小,把运算量大和耗时的工作放在服务程序外处理。

文件系统

vxworks支持网络文件系统nfs及多种本地文件系统,如ms_dosfs、rawfs和rt-11fs,用户可根据具体配置选择。

网络支持

vxworks支持多种物理介质的tcp/ip协议族和几乎所有常用的基于tcp/ip协议的应用层协议,如arp、bootp、slip和ftp,甚至其启动就是通过bootp或ftp方式取得系统映象文件。

以上简单介绍了vxworks的一些技术特征,充分反映了实时性与嵌入式的密切相关性。

3系统软件设计与实现

vg4软件开发主要分为操作系统的配置生成和应用程序的开发两部分。操作系统的生成主要是对bsp的配置和对vxworks组件进行裁剪。在应用程序的开发中,为了满足实时性要求,应对任务进行合理划分,使程序达到多任务并行操作。

任务划分需要遵循以下原则:

功能内聚性。对于功能联系比较紧密的各工作可以用一个任务来运行。如果用多个任务进行相互之间的消息通信,将会影响系统效率。

时间紧迫性。对于实时性要求比较高的任务,以高优先级运行,以保证事件的实时响应。

周期执行原则。对于一个需要周期性执行的工作,应作为一个独立的模块完成。

1操作系统的配置

在嵌入式操作系统上进行开发要满足实时性和资源有限性的要求,因此与通用操作系统存在差异。在生成操作系统时剪裁不需要的组件,添加需要的组件,使系统尽量精简。操作系统及其应用程序主要运行在内存中,操作系统太大会占用很多的内存空间。应用程序运行时要对每个任务分配合适的内存。为了满足实时性,内存分配要尽可能快,因此不采用通用操作系统中复杂而完善的内存分配策略,而采用简单、快速的内存分配方案。如果系统对于实时性和可靠性的要求极高,不能容忍一点延时或者一次分配失败,最好采用静态分配方案,也就是在程序编译时所需要的内存都已经分配好了。例如,火星探测器上的嵌入式系统就必须采用静态分配方案。

雷达系统对实时性要求很高,所以本系统尽量采用静态分配方案。但是vg4内存有限,在一些子任务中也采用动态分配方案。这里vxworks采用firstfit的内存动态分配方式,当系统需要动态分配内存时,可以保证在很短的时间内分配。但是采用这种方式容易产生大量的内存碎片,而vxworks没有清除碎片的功能,因此对系统动态分配内存要非常小心。

根据本系统的实际情况,接口板传给vg4的信处检测结果数据量基本不变,对于这批数据可以以另一种方式存储。通过修改bsp的配置,从ram中分配一块用户保留的存储区域。这块存储区是用户专用的,不会被系统覆盖。用户可以通过绝对地址对其进行读写。具体方法是设置ram布局中userreserved区域,系统默认为0,设置这块ram使之满足原始数据的大小。

2应用程序的设计

应用程序运行在vxworks操作系统上,其功能包括对系统初始化、根据输入命令对各模块进行控制及实时显示信号处理结果。存在着如下几类数据通信:vg4向定时接口板传送控制参数,读取定时接口板中存储的信处检测结果数据,响应外部中断,显示目标信息以及获得外部输入的控制信息。考虑到c语言的平台无关性和代码简介高效性,应用程序采用c语言编写。

系统划分为6个任务:系统监控:启动和监控其他任务。数据传输:响应vme中断,与定时接口板进行数据通信。数据处理:对信处检测结果数据进行处理,扣除虚假目标并转换格式以方便显示。终端显示:显示检测目标结果和系统状态信息到屏幕。指令控制:响应控制开关的命令和获取惯导数据。错误处理:对出现错误的任务做出响应的处理,并在终端显示。

中断服务程序响应定时vme7号中断,程序如下:

图4显示了各任务的优先级。从中可以看到中断服务程序的优先级最高,因为实时系统要及时响应外部中断信号。

指令控制任务首先获取外部开关命令和惯导数据,以消息的形式发送给数据传输任务。当中断来临时,中断服务程序马上释放同步信号量syncsemid。数据传输任务一直等待这个信号量,当获取到这个信号量时,立即把从指令控制任务收到的消息转换成模式字写到接口板的双口ram中,接着读取信处检测结果数据。数据处理子任务获取同步信号量syncsemid2后对收到的信处检测结果数据进行处理,这一任务最耗时。终端显示任务以消息的形式接收上一任务的处理结果,并显示处理结果及系统目前的运行状态信息。信号量广泛应用于同步和对临界资源的保护,信号量的建立如下:

系统监控任务包括初始化各任务及实时监控各任务运行是否正常。当检测到某任务运行不正常时,启动错误处理任务。错误处理任务根据情况给予相应处理,并在终端显示。当系统发生严重错误时,系统会自动重启。

lc44b芯片解密是我们在解密研究中的一个重要突破,随着在ic解密研究中的不断进展,我们的解密技术不断成熟,解密方案更为可靠,能够为客户提供最值得信赖的技术支持。下面我们就针对lc44b芯片的主要性能特征进行分析介绍,供广大客户及其他技术工程师参考借鉴。芯片解密,thelm3200isadc-dcconverteroptimizedforpoweringrfpoweramplifiers(pas)fromasinglelithium-ioncell.itstepsdownaninputvoltageof7vto5vtoavariableoutputvoltageof0.8vto6v.theoutputvoltageissetusingananaloginput(vcon)foroptimizingefficiencyoftherfpaatvariouspowerlevels.保密性好,编程方便:flash能支持在线修改,同时内置的编程控制电路可以阻止外部对flash的非法读写访问;提供不需要连接计算机的手持式编程器,通过c2就可以对mcu进行编程和升级。

若接地线用很细的线条,则接地电位会随电流的变化而变化,使抗噪性能降低。因此应将地线加粗,使它能通过三倍于印制板上的允许电流。如有可能,接地线应在2~3mm以上。音响集成电路按本身的电路功能分有,高、中频放大集成电路、功放集成电路、低噪前置放大集成电路、立体声解码集成电路、单片收音机、收录机集成电路。驱动集成电路及特殊功能集成电路。

研芯科技专业芯片解密12年,业内客户评价高,拥有功能强大的解密平台,目前已经服务上万家企业,抄板单片机解密帮助客户新产品快速上市,收费合理,分期付款,用心的服务;不成功不收费! 抄板pcb,pcb抄板方法

标签:
相关新闻
cache
Processed in 0.009279 Second.