- 在C/C++与汇编语言混合编程的情况下,一般我们都会选择C/C++来实现所期待的功能。在我们用C/C++来实现某些位操作、数学运算等功能后,编译器会尽可能地把它们编译为一些已经高度优化的汇编函数(内联函数),一般情况下是一条或者多条汇编指令的集合,在封装之后,我们可以在C/C++编程的时候直接使用这样的内联函数。如果不直接使用它们,那么在单步调试的时候,也可以从C/C++代码编译生成的汇编代码中找到对应的内联函数,能够帮助我们加深对编译和代码执行的理解。这些编译器的内联函数都有一个显著的外观,即以两个
- 关键字:
DSP C/C++ 汇编语言
- 在DSP的开发中,常用的算法都可以用C/C++代码来高效实现。但是对一些特殊寄存器的读写,例如某些CPU寄存器的读写,因为C/C++代码无法直接对其访问,仍然需要使用汇编代码进行操作。此外,在一些对代码执行时间要求很严格的算法,例如很多个点的FFT、IFFT中,汇编代码的高效仍然是C/C++所不能替代的。这些就涉及到了C/C++代码与汇编代码的接口问题,在此我们就来了解一下它们是如何交互的。首先要遵循以下的九大原则:
1. 所有的函数(不管是C/C++的还是汇编的)都要遵循特定的寄存器约定
- 关键字:
DSP 汇编语言 C/C++
- Altera公司今天宣布,与中国移动研究院(CMRI)签署了三年战略协议,研究基于集中式射频接入网(C-RAN)体系结构的下一代绿色无线网络基础设施解决方案,并进行原型机研发,这一体系结构利用了网络功能虚拟化(NFV)技术。协议于8月15号在中国北京2014年度国际移动互联网大会上签署,这一大会是由工业和信息化部以及包括中国移动在内的中国三家主要运营商组织和协办的。
Altera通信业务部副总裁兼总经理Francis Chow出席了此次活动,介绍了如何利用Altera FPGA技术支持更加绿色的
- 关键字:
Altera 中国移动 C-RAN
- 以“智能零售,从芯开始”为主题,“2014英特尔数字标牌和零售峰会”今天正式在上海开幕。在峰会上,英特尔携手众多业界合作伙伴,集中展示多款基于英特尔架构的数字标牌智慧应用,并且推出了为中国市场量身定制的开放式可插接规范OPS-C(Open Pluggable Specification-China)。这一规范旨在为教育和商务一体交互电子白板和零售数字标牌市场提供统一的、具有更高经济效益的解决方案,帮助终端用户和生态系统合作伙伴应对市场碎片化带来的挑战。
- 关键字:
英特尔 电子商务 OPS-C
- 摘要: 集中基带池和分布式射频拉远技术是4G LTE无线接入网组网的发展趋势。为了节省光纤资源,会把基带池和多个射频拉远模块间的CPRI链路复用在一根光纤上进行传输,由此增加的时延抖动是否会影响系统可靠性是设计组网方案时要重点考虑的因素。本文介绍了一种利用是德公司(原安捷伦公司电子测量仪器部)的高带宽实时示波器进行C-RAN组网时的CPRI时延抖动测试的方法,并根据实际测试结果对彩光直驱和OTN承载两种方式的时延抖动进行了分析。 关键词: C-RAN,CPRI,时延精度,抖动 一、前言 4G
- 关键字:
射频拉远技术 4G LTE 无线接入 C-RAN组网 CPRI 时延精度
- 在一个C/C++程序能正常运行之前,相关的C/C++运行时(run-time)环境首先要正确建立。在CCS软件编程的情况下,C/C++的实时运行库RTS的源程序库rts.src中包含了名为boot.c或者boot.asm的启动程序(在一些TI的例子里,则使用了CodeStartBranch.asm来完成启动工作,它会自动调用库文件中的boot.asm),用于在系统启动后调用c_int00函数,并通过其中的操作来完成运行时环境的建立。通常情况下,c_int00函数位于rts2800.lib库函数中的bo
- 关键字:
DSP C/C++ main函数
- 在我们使用C/C++对DSP进行编程的时候,函数无疑是功能模块划分的重要组成部分,这些函数之间则通过显式地调用或者中断等方式来共同工作。除了对特定的RTS库中的函数(例如某些数学函数)的调用按照它们内置规则进行分配外,我们自定义的函数之间的调用则需要遵循一定的规则,了解这一过程对理解程序的执行和调试也是十分有帮助的,下面我们就来解读一下函数的调用过程,并且可以从其中了解到CPU寄存器、FPU寄存器以及栈(stack)在这一过程中的作用。
一.父函数调用子函数
在父函数调用子函数(被调函数)
- 关键字:
DSP C/C++ 寄存器
- 编者按:本文从技术和就业经验等角度,为即将进入嵌入式开发的工程师们详细讲述嵌入式的概念、嵌入式开发之间的异同以及应该如何做出选择。是一些经验之谈,希望对大家有所帮助。
一.工程师眼中的“嵌入式系统”
在工程师看来:着重理解“嵌入”的概念,主要从三个方面来理解:
1.从硬件上,将基于CPU 的外围器件,整合到CPU 芯片内部,比如早期基于X86体系结构下的计算机,CPU 只是有运算器和累加器的功能,一切芯片要靠外部桥路来扩展实现,象串口之
- 关键字:
嵌入式系统 逻辑设计 C 语言
- DSP的C/C++编程时有多少种数据类型?float,double和long double,long和long long这些绕口的名字究竟有什么区别?数据类型使用不正确又会有什么后果?如果你感觉说不清楚,那我们来看看这些到底都是何方神圣吧:
表1 C28x C/C++支持的数据类型
Ø 64位整数的处理
从上面的表中,可以看出
- 关键字:
DSP 数据类型 C/C++
- 前面我们提到了使用编译器的优化选项进行不同级别的代码优化的方法(请参考http://www.eepw.com.cn/article/203169.htm)。俗话说“好马配好鞍”,即使我们有了强大的代码优化工具,使得我们书写的符合ANSI/ISO C/C++的代码能被高效执行,我们在写代码时也要考虑到一些必要的原则,从而既能实现代码的优化,也能保证代码的安全,使得优化操作不会让我们的代码产生预期之外的结果。下面我们就来看一下在使用代码优化时,必须考虑的五大问题。
1. 小心
- 关键字:
DSP 代码优化 C/C++
- 几个月前笔者跟两个年轻企业家在巴尔的摩吃了顿愉快的午餐,这两个年轻人最近才从霍普金斯大学(Johns Hopkins University)计算机科学系毕业,创办了一家业绩快速成长的顾问公司;他们的公司擅长以一种称为Ruby on Rails (又称Ruby)的语言,撰写以网页为中心的数据库(web-centric databases)软件。
我们边吃饭边谈一些工作上的话题,其中一个年轻人下了个令我难忘的评论:“用C语言写程序是真正的男人!”这句话是他跟同学在将可用的编程
- 关键字:
C语言 Ruby C++
- 毕业后,回顾四年学习历程发现,当时以为的明白,到现在都是那时的不明白。或许是自己的经历(参加比赛比较多)导致了现在的反思。
但是,回顾那个时候的课程设置,却都是合理的,并没有什么不足,但是又为什么会现在才意识到它们之间的联系。最终的结果是,学了很多门课,很多门孤立的课。不知道它们之间有什么联系。那个时候,又有着要多做比赛,增加实践经验的想法。于是很多时间,放在实验室。
真正对于课程的深入思考就更少了,课堂上明显的疑惑还会问问老师,更深入的估计是根本就没有想到。而是想怎么能将单片机程序调出来
- 关键字:
Linux uCOS C
- 电子产品世界,为电子工程师提供全面的电子产品信息和行业解决方案,是电子工程师的技术中心和交流中心,是电子产品的市场中心,EEPW 20年的品牌历史,是电子工程师的网络家园
- 关键字:
RFID技术 C/S结构 服务器
- 摘要 在信号处理中,滤波的优劣直接影响信息的准确性。模拟滤波虽然快捷但不灵活,数字滤波效果虽好但复杂。所以文中提出一种以模拟滤波器为基准,设计具有相同功能而且参数可调的数字滤波器的方法。并以二阶RC无源低通滤波电路为例对此过程进行说明,与模拟滤波电路和传统的数字滤波相比,该方法不仅比传统的数字滤波算法简单快捷,而且可有效防止模拟电路中器件的寄生参数、精度、温度等的影响,使滤波更加稳定。
随着信息科技的发展,信号处理得到了大幅推动,已经被广泛应用于雷达、通信、自动化、航空航天等领域。在信号处理系统中,输入
- 关键字:
Matlab Visual C++
- 钩子函数(hook function)是在进入程序中的函数或者退出函数时调用的程序。它们的用途包括:调试(debug)、跟踪(trace)、评估(profile)以及堆栈溢出的检测等。我们可以通过表1中的选项对钩子函数的使用进行控制。 表1 入口/出口钩子函数选项 关于钩子函数,在CCS的编译器里还有以下的几个规则可以补充说明一下: 1. 使能钩子函数选项的话,会默认使用表1中的定义方法创建钩子函数的隐式声明。此时如果我们要声明或者定义钩子函数的功能的话
- 关键字:
DSP CCS C++
c-ran介绍
您好,目前还没有人创建词条c-ran!
欢迎您创建该词条,阐述对c-ran的理解,并与今后在此搜索c-ran的朋友们分享。
创建词条
关于我们 -
广告服务 -
企业会员服务 -
网站地图 -
联系我们 -
征稿 -
友情链接 -
手机EEPW
Copyright ©2000-2015 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
《电子产品世界》杂志社 版权所有 北京东晓国际技术信息咨询有限公司
京ICP备12027778号-2 北京市公安局备案:1101082052 京公网安备11010802012473