CN102053947B - 全球定位系统基带算法可重构实现的方法 - Google Patents

全球定位系统基带算法可重构实现的方法 Download PDF

Info

Publication number
CN102053947B
CN102053947B CN2011100002639A CN201110000263A CN102053947B CN 102053947 B CN102053947 B CN 102053947B CN 2011100002639 A CN2011100002639 A CN 2011100002639A CN 201110000263 A CN201110000263 A CN 201110000263A CN 102053947 B CN102053947 B CN 102053947B
Authority
CN
China
Prior art keywords
algorithm
computing
base band
gps base
reconfigurable arrays
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2011100002639A
Other languages
English (en)
Other versions
CN102053947A (zh
Inventor
王学香
范烨秋
曹鹏
黄少珉
戚隆宁
时龙兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN2011100002639A priority Critical patent/CN102053947B/zh
Publication of CN102053947A publication Critical patent/CN102053947A/zh
Application granted granted Critical
Publication of CN102053947B publication Critical patent/CN102053947B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

本发明提供了一种全球定位系统基带算法可重构实现的方法,其特征在于:该方法用于可重构系统,该可重构系统包括:主处理器,作为协处理器的可重构阵列,直接存储器读取控制器模块、中断控制器模块、外部存储器、总线;可重构阵列、直接存储器读取控制器模块、中断控制器模块和外部存储器通过总线与主处理器相连;其中,可重构阵列是一个8×8的运算单元阵列,完成算法的加速。本发明解决了跟踪通道如何完成1ms的实时跟踪、捕获和跟踪如何合理地分配资源、跟踪环路和相关运算的并行处理以及相关运算、跟踪环路和捕获如何自由地切换等问题,完成全球定位系统基带算法的可重构。

Description

全球定位系统基带算法可重构实现的方法
技术领域
本发明属于嵌入式设计领域,一种基于Nucleus(一款操作系统的名称)实时操作系统的全球定位系统(GPS)基带算法可重构实现的调度方法,成功地实现了多通道GPS基带算法中的并行捕获和跟踪,可应用于面向移动通信终端的高性能嵌入式可重构阵列片上系统(SoC)芯片设计中通信基带算法的优化。
背景技术
在嵌入式系统快速发展的今天,以交互式媒体处理、高性能移动计算等为代表的新一代应用,对嵌入式终端的性能、功耗、灵活性、集成度和成本等提出了苛刻的要求。由通用处理器和可重构阵列构成的新型可重构系统,具有通用处理器的灵活性和专用集成电路的高效率,同时也是探索一条解决纳米级芯片高昂设计和投片成本的新路,是处理器发展的新方向。随着GPS应用的迅速发展,GPS作为多媒体应用的一种越来越多地应用在手持设备上,对手持设备的性能提出了更高的要求,如果能将GPS与可重构系统相结合将会有效解决这个问题。
GPS信号接收机能够接收并处理GPS信号,实现用户位置和速度的解算。GPS信号接收机主要包括天线单元、A/D (模拟/数字)变换、信号处理部分和信息处理部分。GPS基带算法为接收机的信号处理部分。传统的GPS信号接收机分为硬件接收机和软件接收机,在硬件接收机中,信号的接收、相关运算、捕获、跟踪等算法都是在硬件中实现的;软件接收机把相关运算、捕获、跟踪等全部在软件中实现,软件部分的输入就是A/D得到的数字中频信号,A/D变换之后的部分都是用软件实现的。
本发明所针对的采用可重构技术实现的GPS基带算法与传统的软硬件实现方法都不相同,是两种实现方法的结合。GPS基带算法具有通信基带的典型特征,通过提炼基带算法中共有的特征算法,然后通过配置信息映射到可重构阵列上。它将A/D得到的数字中频信号作为输入,由可重构系统来完成捕获和跟踪算法,同一硬件完成不同算法是通过软件即配置信息来控制的,变换不同的配置信息可重构阵列就可以完成不同的算法。在可重构系统上实现GPS基带算法,是对多导航系统接收机在可重构系统上的尝试,验证了伽利略(GALILEO)和格洛纳斯(GLONASS)系统使用可重构技术的可行性,同时GPS导航定位作为多媒体的一项应用,它的算法处理要求和数据流传输方式可以指导可重构架构的设计,增强可重构处理器在多媒体处理方面的灵活性。
在可重构系统上实现12通道的并行捕获和跟踪的过程中凸显出很多问题,如跟踪通道如何完成1ms的实时跟踪、捕获和跟踪同时使用可重构阵列时如何合理地分配资源、跟踪环路的运行要等待相关运算的数据以及相关运算、跟踪环路和捕获如何自由地切换。为了解决这些问题,需要引入了Nucleus实时操作系统,在增加很小的额外开销的情况下,合理、高效地完成了多通道GPS基带算法中相关运算、跟踪环路和捕获的调度。
Nucleus实时操作系统对CPU的支持能力比较强,支持当前流行的大多数精简指令集处理器(RISC)、复杂指令集处理器(CISC)、数字信号处理(DSP)处理器,是面向实时性要求较高的嵌入式应用而设计的,可以完成实时、任务抢先式、多任务处理。Nucleus 操作系统内核提供其它实时内核都具有的系统服务,比如:任务控制、任务通信、任务同步、内存管理、可编程的定时器、标准的输入/输出设备接口等。对任务的调度依赖优先级、时间片的方法,可以选择挂起一个任务按照先入先出(FIFO)的顺序或按照优先级的顺序。应用Nucleus PLUS以上各种调度机制可以极大地提高实时应用程序的开发效率,这些可以转变成更低的开发投资和更短的开发周期。
发明内容
技术问题:本发明的目的在于考虑到全球定位系统基带算法捕获和跟踪的实现涉及到并行运算、资源管理和数据的实时处理,针对全球定位系统基带算法的各组成算法的运行顺序、相互之间的依赖关系、对可重构硬件资源的使用和实时性要求都不尽相同的情况,引入了Nucleus实时操作系统,在增加很小的额外开销的情况下,合理、高效地完成了多通道全球定位系统基带算法中相关运算、跟踪环路和捕获的调度,让各算法之间协调地运行,最终在可重构阵列上实现全球定位系统基带算法的并行捕获和跟踪。
技术方案:为解决上述技术问题,本发明提供的技术方案为:该方法用于可重构系统,该可重构系统包括:主处理器,作为协处理器的可重构阵列,直接存储器读取控制器模块、中断控制器模块、外部存储器、总线;可重构阵列、直接存储器读取控制器模块、中断控制器模块和外部存储器通过总线与主处理器相连;其中,可重构阵列是一个8×8的运算单元阵列,完成算法的加速,每个运算单元以算术逻辑单元为基本单元,能够在一个周期内完成乘法运算、移位加减法运算、逻辑运算、绝对值运算等复杂的单个运算;直接存储器读取控制器模块用于向可重构阵列传输配置信息;中断控制器模块提供了主处理器和可重构阵列之间的同步方式,该方法包括如下步骤:首先,根据全球定位系统基带算法的各组成算法的特点,确定各组成算法对硬件资源的使用方法,该使用方法包括如下步骤:全球定位系统基带算法包括捕获算法和跟踪算法,捕获算法的组成算法均由可重构阵列来实现,捕获结束之后全球定位系统接收机进入信号的跟踪状态, 跟踪算法由相关运算和跟踪环路运算组成,相关运算完成1毫秒基带数字信号的载波剥离和码剥离并累加,涉及到大量数据重复循环运算,由可重构阵列来实现;跟踪环路运算由码环和载波环构成,实现跟踪信号的码相位和载波频偏,使本地码、本地载波与输入信号的码和载波近似达到同频同相,跟踪环路运算由主处理器来完成;其次,借鉴全球定位系统硬件接收机的调度方法,全球定位系统基带算法通过对Nucleus操作系统提供的优先级机制、信号量机制、事件组机制、中断机制的使用来实现对各组成算法的调度。全球定位系统基带算法利用Nucleus操作系统提供的优先级机制解决跟踪通道如何完成1毫秒的实时跟踪;全球定位系统基带算法利用Nucleus操作系统提供的信号量机制完成捕获算法和跟踪算法对可重构阵列资源的合理分配;全球定位系统基带算法利用Nucleus操作系统提供的事件组机制完成跟踪环路和相关运算的并行处理;全球定位系统基带算法利用Nucleus操作系统提供的中断机制完成相关运算、跟踪环路和捕获算法的自由地切换,从而完成多通道全球定位系统基带算法各组成算法之间的调度,完成全球定位系统基带算法的可重构实现。 
全球定位系统基带算法对Nucleus操作系统提供的优先级机制的使用方法包括如下步骤:在多通道全球定位系统基带算法中,捕获运算优先级最低,只要捕获没有完成通道就一直处于捕获模式,某一通道完成捕获后转换到跟踪模式;跟踪模式中包含两类运算:相关运算和跟踪环路运算,跟踪环路运算需要相关运算后的数据,相关运算必须先执行,它的优先级最高,跟踪环路运算优先级次之;在1毫秒的时间间隔内,相关运算和跟踪环路运算总是最先得到执行,等所有的跟踪运算完成后才会将优先权交给捕获运算;跟踪运算此时处于挂起状态,等待下1毫秒的硬中断到来时,跟踪运算才会进入就绪状态。
全球定位系统基带算法对Nucleus操作系统提供的信号量机制的使用方法包括如下步骤:多通道捕获和跟踪时,捕获运算和跟踪运算中的相关运算都在可重构阵列上运行,可重构阵列是一种公共的系统资源,通过对信号量的控制来完成对可重构阵列资源的分配,相关运算的优先级相对较高,优先获得可重构阵列的信号量,相关运算完成后可重构阵列会产生一次中断,在其中断处理程序中释放可重构阵列的信号量,只有当所有相关运算全部完成后,捕获运算才有可能获得可重构阵列的信号量。
全球定位系统基带算法基带算法对Nucleus操作系统提供的事件组机制的使用方法包括如下步骤:引入事件组之后,每次相关运算完成后,将对应通道的事件置位,当下一次相关运算配置完成后,环路运算就可以获得主处理器的控制权,获取对应通道的事件并完成环路运算,这样就使环路运算和相关运算有效地并行运行;另外当毫秒的硬中断产生时,对跟踪运算事件组置位,这时跟踪运算才能进入就绪状态。
全球定位系统基带算法基带算法对Nucleus操作系统提供的中断机制的使
用方法包括如下步骤:在操作系统中使用了两个中断:可重构阵列中断和1毫秒实时中断;由于低级中断服务程序只能处理一些简单的任务,耗时不能过长,而高级中断服务程序则可以处理相对较长时间的任务,因此在低级中断服务程序中完成清除硬件中断操作并激活高级中断服务程序;中断以及信号量的使用,可以高效地管理可重构阵列的资源,使得可重构阵列得到最大程度的使用,同时保证捕获运算和跟踪运算按照优先级顺序并行不悖地运行,1毫秒的实时中断保证了跟踪的硬实时要求,使得跟踪运算在最短的时间内获得资源并对中断作出响应;当两个中断同时到来时,1毫秒实时中断应优先得到执行,因此1毫秒实时中断的优先级应高于可重构阵列中断的优先级。
有益效果:(1)本发明所实现的可重构系统上的全球定位系统接收机,充分发挥可重构系统强大的并行重复运算的优势,具有与软件接收机相似的灵活性,并且以更小的硬件代价完成全球定位系统基带信号处理。
(2)本发明所实现的全球定位系统基带算法如果不使用Nucleus实时操作系统,多通道的捕获运算、相关运算和跟踪环路运算无法有效地进行调度,可重构阵列(RCA)资源不能得到有效的使用,实时性要求不能得到保证。使用Nucleus实时操作系统后,以上问题都得到了圆满的解决。 
设置事件、获取事件、获取信号量、释放信号量、低级中断处理程序、高级中断处理程序和任务调度等是操作系统的常规调度机制,每一种机制占一次跟踪运算时间比例都低于10%,频繁的任务间切换、信号量的获取与释放、中断的处理、事件的设置与获取等占整个跟踪运算时间的比例低于40%,虽然损失了一部分运算时间,却成功实现了复杂的多任务实时处理。Correlation()和LOOP()为跟踪的相关运算和环路运算,前者在可重构阵列(RCA)上运行,后者在微处理器内核上运行,实验结果表明这两种运算占整个跟踪时间比例都超过了50%,如果没有操作系统的介入,并行运算是不可能实现的,从这个角度来说,引入操作系统对运算时间的控制和运算效率的提高是有利的。通过引入Nucleus实时操作系统成功实现了多颗卫星的搜索与跟踪。
附图说明
图1为多通道捕获和跟踪对硬件资源的使用;
图2为事件组在相关运算和环路运算中的运用;
图3为GPS基带算法调度对中断的使用;
图4为GPS基带算法捕获部分的原理框图;
图5为多通道GPS基带算法的工作流程。
具体实施方式
下面结合附图对本发明做进一步说明。
说明1:全文用到的英文含义:Nucleus(一款操作系统的名称),ARM(一款处理器名称),直接存储器读取控制器(DMAC),可重构阵列(RCA),算术逻辑单元(ALU),低级中断服务程序(LISR),高级中断服务程序(HISR),精简指令集处理器(RISC)、复杂指令集处理器(CISC)、数字信号处理(DSP)处理器。
本发明针对多通道捕获和跟踪的实现涉及到并行运算、资源管理和数据的实时处理等情况,在增加很小的额外开销的情况下,合理、高效地完成了多通道GPS基带算法中相关运算、跟踪环路和捕获的调度,让各算法之间协调运行;其实现方法所针对的系统是以ARM(一款处理器名称)为主处理器,可重构阵列作为协处理器等组成的可重构系统;方法是借鉴GPS硬件接收机的调度方法,利用Nucleus(一款操作系统名称)操作系统提供的优先级机制、信号量机制、事件组机制及中断机制,解决了跟踪通道如何完成1ms的实时跟踪、捕获和跟踪如何合理地分配资源、跟踪环路和相关运算的并行处理以及相关运算、跟踪环路和捕获如何自由地切换等问题,实现多通道GPS基带处理算法的调度。
本专利申请的实现方法应用于以ARM(一款处理器名称)为主处理器,可重构阵列作为协处理器,另外还包括直接存储器读取控制器(DMAC)模块、中断控制器模块、外部存储器(memory)等组成的可重构系统。其中,可重构阵列是一个8×8的运算单元阵列,完成算法的加速,每个运算单元以算术逻辑单元(ALU)为基本单元,能够在一个周期内完成乘法运算、移位加减法运算、逻辑运算、绝对值运算等复杂的单个运算;直接存储器读取控制器(DMAC)主要用于向可重构阵列传输配置信息;中断控制器提供了ARM和可重构阵列之间的同步方式。
方法是借鉴GPS硬件接收机的调度方法,利用Nucleus操作系统提供的优先级机制、信号量机制、事件组机制及中断机制完成各算法任务的调度,解决了跟踪通道如何完成1ms的实时跟踪、捕获和跟踪同时使用可重构阵列时如何合理地分配资源、跟踪环路的运行要等待相关运算的数据以及相关运算、跟踪环路和捕获如何自由地切换等问题,实现了多通道GPS基带算法的调度。
相关运算完成1ms基带数字信号的载波剥离和码剥离并累加,涉及到大量数据重复循环运算,由可重构阵列来实现。
Nucleus实时操作系统对GPS基带算法的调度主要包括以下四个方面:
(1)多通道GPS基带算法对优先级机制的使用
(2)多通道GPS基带算法对信号量机制的使用
(3)多通道GPS基带算法对事件组机制的使用
(4)多通道GPS基带算法对中断机制的使用
可重构实现的GPS基带算法的各组成算法对硬件资源的使用:由电子工业出版社出版的《GPS原理与接收机设计》一书中,详细介绍了GPS基带算法,基带算法包括捕获算法和跟踪算法,捕获结束之后GPS接收机进入信号的跟踪状态。在捕获阶段从接收信号中检测出信号的载波多普勒频偏和码相位,但此时的频偏与码相位仍具有较大的误差,需要跟踪算法进一步减小频偏和码相位的误差才能够正确地解调信号。跟踪算法由相关运算和跟踪环路运算组成,相关运算完成1ms基带数字信号的载波剥离和码剥离并累加,涉及到大量数据重复循环运算,比较适合于可重构阵列(RCA)运算,因此提炼出相关运算映射到可重构阵列(RCA)上。而跟踪环由码环和载波环构成,分别用来跟踪信号的码相位和载波频偏,使本地码、本地载波与输入信号的码和载波近似达到同频同相。跟踪环路运算涉及到少量数据的复杂运算,不适合在可重构阵列(RCA)上运行,由ARM(一款处理器名称)核来完成。捕获算法由快速傅里叶变换(FFT)/快速傅里叶逆变换(IFFT)运算、求共轭与复乘运算和求最在值运算组成,都映射到可重构阵列(RCA)上让可重构阵列来进行捕获运算。
下面将具体介绍Nucleus实时操作系统各种调度机制的原理以及GPS算法对调度机制的使用:(1)多通道GPS基带算法对优先级机制的使用在GPS基带算法中,捕获运算几乎一直在运行,故它的优先级最低,只要捕获没有完成通道就一直处于捕获模式,某一通道完成捕获后转换到跟踪模式。跟踪模式中包含两类运算:相关运算和跟踪环路运算,跟踪环路运算需要相关运算后的数据,因此相关运算必须先执行,它的优先级最高,跟踪环路运算优先级次之。相关运算在可重构阵列上完成运算,每次配置完可重构阵列并启动其运算后,相关运算完成并挂起,将优先权交给跟踪环路运算。跟踪模式下要完成1ms的实时跟踪,即当1ms的实时硬中断到来时,系统响应中断,并在中断中设置跟踪运算任务事件组,中断响应完成后,跟踪运算任务会抢占当前运行任务,挂起的跟踪运算任务进入就绪状态,当前运行的任务被挂起,这样就保证了跟踪运算的优先运行。在1ms的时间间隔内,相关运算和跟踪环路运算总是最先得到执行,等所有的跟踪运算完成后才会将优先权交给捕获运算。跟踪运算此时处于挂起状态,等待下1ms的硬中断到来时,跟踪运算才会进入就绪状态。
(2)多通道GPS基带算法对信号量机制的使用如图1所示,多通道捕获和跟踪时,假如第1个通道处于捕获模式,其它通道全处于跟踪模式。其中捕获运算和跟踪运算中的相关运算都是在可重构阵列(RCA)上运行的,因此可以把RCA当作一种公共的系统资源,通过对信号量的控制来完成对RCA资源的分配。相关运算的优先级相对较高,优先获得RCA的信号量,相关运算完成后RCA会产生一次中断,在其中断处理程序中释放RCA的信号量。此时RCA的信号量为非零,各运算都可以根据优先级获得信号量。只有当所有相关运算全部完成后,捕获运算才有可能获得RCA的信号量。当1ms实时中断到来时,捕获运算正在占用RCA资源,而相关运算进入就绪状态并希望获取RCA使用权,这样就出现了优先级倒置的问题,RCA被低优先级的捕获运算占用,高优先级的相关运算得不到RCA的资源,这种情况下只能等捕获运算使用完RCA并释放信号量后,相关运算才能得到执行。
(3)多通道GPS基带算法对事件组机制的使用如图2所示,在没有使用事件组之前,每次环路运算都必须等相关运算完成后才能进行,而两种运算是在不同的处理单元上运行,当相关运算在RCA上运行时,ARM一直处于等待的状态,同时环路运算却得不到执行,这种串行的运算方式效率很低,没有发挥出RCA与ARM并行处理的优势。引入事件组之后,每次相关运算完成后,将对应通道的事件置位,当下一次相关运算配置完成后,环路运算就可以获得ARM控制权,获取对应通道的事件并完成环路运算,这样就使环路运算和相关运算有效地并行运行。在GPS基带算法的调度过程中,事件组的作用还有很多,如1ms的硬中断产生时,对跟踪运算事件组置位,这时跟踪运算才能进入就绪状态。事件组的机制为许多有相互关联的任务的执行提供了任务间通信的纽带,为理清任务间复杂的关系提供了极大的方便。
(4)多通道GPS基带算法对中断机制的使用如图3所示,在操作系统中使用了两个中断:RCA中断和1ms实时中断。由于LISR只能处理一些简单的任务,耗时不能过长,而HISR则可以处理相对较长时间的任务,因此在LISR中完成清除硬件中断操作并激活HISR,RCA中断和1ms实时中断在HISR中分别完成释放信号量和设置事件组操作。捕获运算和跟踪运算都需要使用RCA,当运算完成后通过RCA中断释放信号量,交出RCA控制权,以供下次运算获取RCA的信号量。RCA中断以及RCA信号量的使用,可以高效地管理RCA的资源,使得RCA得到最大程度的使用,同时保证捕获运算和跟踪运算按照优先级顺序并行不悖地运行。跟踪有1ms实时性的要求,当1ms实时中断到来时,对跟踪运算事件组置位,跟踪运算进入就绪状态,等一次捕获运算完成后就立即进入跟踪运算。1ms的实时中断保证了跟踪的硬实时要求,使得跟踪运算在最短的时间内获得资源并对中断作出响应。这里设置了两个中断,当两个中断同时到来时,1ms实时中断应优先得到执行,因此1ms实时中断的HISR的优先级应高于RCA中断的HISR。
本专利的开发平台采用的是ARM公司的ESL仿真验证平台——SoC Designer(一款软件名称),通过建立可重构阵列的时钟周期精确的性能仿真模型,搭建可重构系统的性能仿真环境,在这一虚拟的硬件仿真平台上验证GPS基带算法的正确性与性能。
图4为适用于可重构系统的并行码相位捕获算法,其通过傅立叶变换实现循环相关,使得捕获过程在相位域并行化,将搜索量减少到了对11个不同载波频率的搜索,运算效率较高, 适合可重构系统下的捕获算法实现。并行码相位捕获算法中大量使用快速傅里叶变换(FFT)算法和快速傅里叶逆变换(IFFT)算法,FFT算法和IFFT算法中涉及到大量数据的并行循环运算,特别适合由可重构阵列来进行运算,另外求共轭、复乘运算和求最值运算也由可重构阵列来实现。 
跟踪阶段首先用捕获得到的载波频偏和码相位初始化载波环和码环,然后载波环与码环通过反馈环路结构不断地调整本地码和本地载波。跟踪模块产生超前、即时、延时三路本地码并与输入信号作相关,码跟踪环利用超前、延时两路相关结果之差得到输入信号和本地码之间的相位误差,从而调整本地码发生器,最终实现码相位的精确同步。跟踪环使用本地载波和即时码与输入信号相乘,并定期将相乘的结果进行累加,累加的结果送到载波环的鉴别器产生载波环的误差信号,送至载波环的数字控制振荡器(NCO)调整载波频率。其中6路的相关运算(即本地载波和本地码与输入信号相乘并累加)涉及到大量数据的运算,且运算流程相对简单,可以一次在RCA上完成。每次相关运算生成6个相关结果送至载波跟踪环路和码跟踪环路,因此环路涉及到的数据量较少,且运算相对复杂,不适合在RCA上运行,因此选择由主控核来完成。
     Nucleus实时操作系统对多通道GPS基带算法的调度主要为了实现以下几个目标:(1)1ms的实时跟踪要求必须保证在规定的时间内作出正确的响应,如果响应失败,那结果将会是灾难性的,因此必须保证实时性的处理。同时由于相关运算、跟踪环路和捕获等任务重要性的内在差异,在任务间共享处理器和可重构阵列的方法非常重要。当一个更重要的任务需要运行的时候,必须挂起当前运行的任务并开始高优先级的任务。在高优先级任务完成之后,挂起的任务恢复。
(2) 相关运算(在RCA上运算)和环路运算(在ARM上运算)的近似并行,以提高效率;(3) 在有效通道数小于特定值时,完成多通道的相关运算和环路运算后,RCA用作重捕,相关运算和环路运算是实时任务,重捕是非实时任务,非实时任务花费时间大大超过1ms,所以需要切割成N个步骤,在实时任务完成本次运算,尚有时间时,完成非实时任务的一个步骤,在重捕过程中会产生1ms硬实时中断,跟踪运算进入就绪状态。
为实现上述目标,主要使用操作系统的以下几种机制来对多通道GPS基带算法进行调度
(1)多通道GPS基带算法对优先级机制的使用
(2)多通道GPS基带算法对信号量机制的使用
(3)多通道GPS基带算法对事件组机制的使用
(4)多通道GPS基带算法对中断机制的使用
在Nucleus实时操作系统的调度下,多通道GPS基带算法的工作流程如图5所示:
(1)当数据就绪,且当前RCA运算完成,执行任务一,配置通道1的相关运算,然后挂起,通道1的环路运算运行;
(2)任务二实现其余通道的相关运算和环路运算。除通道1以外的其他通道的相关运算的配置,在RCA中断的低级服务程序中进行,同时设置标志标明前一通道的相关运算完成,第一个通道和最后一个通道需要获取和释放信号量,其余通道不需要信号量的获取,当多个通道的跟踪运算都实现之后,运行非实时任务重捕算法的一个步骤;
(3)当1ms硬实时中断发生时,跟踪算法进入就绪状态,当重捕算法的一个步骤执行结束后,开始下一个1ms的跟踪算法。

Claims (5)

1.一种全球定位系统基带算法可重构实现的方法,其特征在于:
该方法用于可重构系统,该可重构系统包括:主处理器,作为协处理器的可重构阵列,直接存储器读取控制器模块、中断控制器模块、外部存储器、总线;
可重构阵列、直接存储器读取控制器模块、中断控制器模块和外部存储器通过总线与主处理器相连; 
其中,可重构阵列是一个8×8的运算单元阵列,完成算法的加速,每个运算单元以算术逻辑单元为基本单元,能够在一个周期内完成乘法运算、移位加减法运算、逻辑运算、绝对值运算复杂的单个运算;直接存储器读取控制器模块用于向可重构阵列传输配置信息;中断控制器模块提供了主处理器和可重构阵列之间的同步方式;
该方法包括如下步骤:
首先,根据全球定位系统基带算法的各组成算法的特点,确定各组成算法对硬件资源的使用方法,该使用方法包括如下步骤:全球定位系统基带算法包括捕获算法和跟踪算法,捕获算法的组成算法均由可重构阵列来实现,捕获结束之后全球定位系统接收机进入信号的跟踪状态, 跟踪算法由相关运算和跟踪环路运算组成,相关运算完成1毫秒基带数字信号的载波剥离和码剥离并累加,涉及到大量数据重复循环运算,由可重构阵列来实现;跟踪环路运算由码环和载波环构成,实现跟踪信号的码相位和载波频偏,使本地码、本地载波与输入信号的码和载波近似达到同频同相,跟踪环路运算由主处理器来完成;
其次,借鉴全球定位系统硬件接收机的调度方法,全球定位系统基带算法通过对Nucleus操作系统提供的优先级机制、信号量机制、事件组机制、中断机制的使用来实现对各组成算法的调度;其中,全球定位系统基带算法利用Nucleus操作系统提供的优先级机制解决跟踪通道如何完成1毫秒的实时跟踪;全球定位系统基带算法利用Nucleus操作系统提供的信号量机制完成捕获算法和跟踪算法对可重构阵列资源的合理分配;全球定位系统基带算法利用Nucleus操作系统提供的事件组机制完成跟踪环路和相关运算的并行处理;全球定位系统基带算法利用Nucleus操作系统提供的中断机制完成相关运算、跟踪环路和捕获算法的自由地切换,从而完成多通道全球定位系统基带算法各组成算法之间的调度,完成全球定位系统基带算法的可重构实现。 
2.根据权利要求1所述的全球定位系统基带算法可重构实现的方法,其特征在于:全球定位系统基带算法对Nucleus操作系统提供的优先级机制的使用方法包括如下步骤: 
在多通道全球定位系统基带算法中,捕获运算优先级最低,只要捕获没有完成通道就一直处于捕获模式,某一通道完成捕获后转换到跟踪模式;跟踪模式中包含两类运算:相关运算和跟踪环路运算,跟踪环路运算需要相关运算后的数据,相关运算必须先执行,它的优先级最高,跟踪环路运算优先级次之;在1毫秒的时间间隔内,相关运算和跟踪环路运算总是最先得到执行,等所有的跟踪运算完成后才会将优先权交给捕获运算;跟踪运算此时处于挂起状态,等待下1毫秒的硬中断到来时,跟踪运算才会进入就绪状态。
3.根据权利要求1所述的全球定位系统基带算法可重构实现的方法,其特征在于:全球定位系统基带算法对Nucleus操作系统提供的信号量机制的使用方法包括如下步骤:        
多通道捕获和跟踪时,捕获运算和跟踪运算中的相关运算都在可重构阵列上运行,可重构阵列是一种公共的系统资源,通过对信号量的控制来完成对可重构阵列资源的分配,相关运算的优先级相对较高,优先获得可重构阵列的信号量,相关运算完成后可重构阵列会产生一次中断,在其中断处理程序中释放可重构阵列的信号量,只有当所有相关运算全部完成后,捕获运算才有可能获得可重构阵列的信号量。
4.根据权利要求1所述的全球定位系统基带算法可重构实现的方法,其特征在于:全球定位系统基带算法基带算法对Nucleus操作系统提供的事件组机制的使用方法包括如下步骤:   
引入事件组之后,每次相关运算完成后,将对应通道的事件置位,当下一次相关运算配置完成后,环路运算就可以获得主处理器的控制权,获取对应通道的事件并完成环路运算,这样就使环路运算和相关运算有效地并行运行;另外当毫秒的硬中断产生时,对跟踪运算事件组置位,这时跟踪运算才能进入就绪状态。
5.根据权利要求1所述的全球定位系统基带算法可重构实现的方法,其特征在于:全球定位系统基带算法基带算法对Nucleus操作系统提供的中断机制的使
用方法包括如下步骤:  
在操作系统中使用了两个中断:可重构阵列中断和1毫秒实时中断;由于低级中断服务程序只能处理一些简单的任务,耗时不能过长,而高级中断服务程序则可以处理相对较长时间的任务,因此在低级中断服务程序中完成清除硬件中断操作并激活高级中断服务程序;中断以及信号量的使用,可以高效地管理可重构阵列的资源,使得可重构阵列得到最大程度的使用,同时保证捕获运算和跟踪运算按照优先级顺序并行不悖地运行,1毫秒的实时中断保证了跟踪的硬实时要求,使得跟踪运算在最短的时间内获得资源并对中断作出响应;当两个中断同时到来时,1毫秒实时中断应优先得到执行,因此1毫秒实时中断的优先级应高于可重构阵列中断的优先级。
CN2011100002639A 2011-01-04 2011-01-04 全球定位系统基带算法可重构实现的方法 Expired - Fee Related CN102053947B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011100002639A CN102053947B (zh) 2011-01-04 2011-01-04 全球定位系统基带算法可重构实现的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100002639A CN102053947B (zh) 2011-01-04 2011-01-04 全球定位系统基带算法可重构实现的方法

Publications (2)

Publication Number Publication Date
CN102053947A CN102053947A (zh) 2011-05-11
CN102053947B true CN102053947B (zh) 2012-07-04

Family

ID=43958288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100002639A Expired - Fee Related CN102053947B (zh) 2011-01-04 2011-01-04 全球定位系统基带算法可重构实现的方法

Country Status (1)

Country Link
CN (1) CN102053947B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102207892B (zh) * 2011-05-27 2013-03-27 清华大学 一种动态可重构处理器内子单元间进行同步的方法
CN102426368B (zh) * 2011-11-07 2013-06-05 东南大学 Gps接收机基于扩展卡尔曼滤波器跟踪环路的失锁检测方法
CN102684831B (zh) * 2012-03-21 2014-09-10 上海交通大学 一种数字多通道相关处理系统及用于该系统中的缓存模块的输出方法
CN103914404B (zh) * 2014-04-29 2017-05-17 东南大学 一种粗粒度可重构系统中的配置信息缓存装置及压缩方法
CN110737628A (zh) 2019-10-17 2020-01-31 辰芯科技有限公司 一种可重构处理器和可重构处理器系统
CN111737191B (zh) * 2020-07-20 2021-01-15 长沙海格北斗信息技术有限公司 共享缓存方法、基带处理单元及其芯片
CN113447967B (zh) * 2021-06-28 2024-04-12 西安邮电大学 集成卫星导航基带ip的应用处理器芯片及集成方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1361433A (zh) * 2000-12-23 2002-07-31 林清芳 运载体的全融合定位方法
US6683564B1 (en) * 2002-11-19 2004-01-27 Eride, Inc. High-sensitivity satellite positioning system receivers and reception methods
CN101201396A (zh) * 2007-12-20 2008-06-18 上海伽利略导航有限公司 全球定位系统高灵敏度接收机及其室内外无缝切换方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1361433A (zh) * 2000-12-23 2002-07-31 林清芳 运载体的全融合定位方法
US6683564B1 (en) * 2002-11-19 2004-01-27 Eride, Inc. High-sensitivity satellite positioning system receivers and reception methods
CN101201396A (zh) * 2007-12-20 2008-06-18 上海伽利略导航有限公司 全球定位系统高灵敏度接收机及其室内外无缝切换方法

Also Published As

Publication number Publication date
CN102053947A (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN102053947B (zh) 全球定位系统基带算法可重构实现的方法
CN102360309B (zh) 片上多核异构系统的调度系统与调度执行方法
CN102129390B (zh) 片上多核计算平台的任务调度系统及进行任务并行化方法
CN102096596B (zh) 一种基于虚拟机内存模板的云计算服务Cache系统
CN101727351B (zh) 面向多核平台的虚拟机监控器非对称调度器及其调度方法
CN102360313B (zh) 片上异构多核计算平台的性能加速方法
US20160085551A1 (en) Heterogeneous function unit dispatch in a graphics processing unit
CN105183698B (zh) 一种基于多核dsp的控制处理系统和方法
CN101751289A (zh) 一种嵌入式实时操作系统的混合调度方法
CN109522108A (zh) 一种基于Kernel合并的GPU任务调度系统及方法
CN102591713B (zh) 基于有限状态机的软件功能模块的调度系统
CN103279445A (zh) 运算任务的计算方法及超算系统
CN102193779A (zh) 一种面向MPSoC的多线程调度方法
CN102135901A (zh) 带有动态数量工作者的并行查询引擎
CN102736595A (zh) 一种基于32位微处理器和rtos的智能配电终端统一平台
CN109445939A (zh) 一种基于主动出让机制的软实时调度内核的调度方法
CN103823706A (zh) 一种基于RTLinux的被控对象模型模拟仿真实时调度方法
CN101702833B (zh) 一种移动网格任务调度方法
CN102353968A (zh) 一种基于fpga的gps信号捕获方法及其系统
CN104714838A (zh) 一种任务调度方法及装置
CN113434284A (zh) 一种隐私计算服务端设备、系统及任务调度方法
CN105676689B (zh) 实时软件接收机中采集数据循环存储与分发方法
CN102176033B (zh) 一种基于通用图形处理器的卫星导航系统比特压缩跟踪方法
CN103034959A (zh) 一种进行调度的方法和设备
CN116482725B (zh) 一种开放式卫星导航基带信号处理方法、装置及接收机

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

Termination date: 20150104

EXPY Termination of patent right or utility model