算法移植优化基础

PS:为了面试准备的,总结的有点粗糙。

 

ARM:Advanced RISC Machines,ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,四个功能模块可供生产厂商根据不同用户的要求来配置生产。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行。

 

DSP:Digital Signal Processor,内部有专用的硬件乘法器哈佛总线结构对大量的数字信号处理的速度快(即数据总线和地址总线分开使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。)

特点:

1.哈佛结构,程序和数据存储在不同的存储空间,因此取指和执行能完全重叠

2.流水线操作,以减少指令执行时间

3.占用硬件乘法器,乘法可在一个指令周期内完成

4.特殊的dsp指令(SIMD),达到并行执行

当然,与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。

哈佛结构

并行体系结构,将程序和数据存储在不同的存储空间

 

三级流水线

在每个周期内,三个不同的指令处于激活状态,每个指令处于不同的阶段。

 

FPGA:Field ProgrammableGate Array,采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户的逻辑。

加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA 编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。

 

 

三者比较:

ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面;ARM是32位的单片机,其内部硬件资源的性能较高,可以加载操作系统,有了操作系统,就可以像pc机那样多任务实时处理,就是同一时间内能完成多个任务,而且不会互相影响。

 

DSP主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度;

 

FPGA可以用VHDL或verilog HDL来编程,灵活性强,由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错。

 

FPGA适合于控制功能算法简单且含有大量重复计算的工程使用,DSP适合于控制功能复杂且含有大量计算任务的工程应用。

 

DSP是软件实现算法,FPGA是硬件实现算法,所以FPGA的处理速度会更高;FPGA比DSP快的一个重要原因是FPGA可以实现并行运算,而DSP由于硬件结构条件限制,主要还是依靠软件来提取指令执行,可以理解为还是串行执行的【DSP所谓的并行执行主要还是得自己开通软件流水,或者说是自己写并行代码,而非硬件结构本身】。

 

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SM2椭圆曲线公钥密码算法是我国自主设计的公钥密码算法,用于实现数字签名、密钥交换和数据加密等功能。相比于RSA算法,SM2算法基于椭圆曲线上点群离散对数难题,具有更高的密码强度。\[1\] 关于SM2算法移植,目前已经在我国的密码应用领域得到广泛应用。国家密码管理局于2011年发布了《关于做好公钥密码算法升级工作的通知》,要求在建和拟建公钥密码基础设施电子认证系统和密钥管理系统中使用SM2算法。同时,自2011年7月1日起,投入运行并使用公钥密码的信息系统也应使用SM2算法。\[2\] SM2算法移植工作主要包括将算法应用到相应的系统和设备中,并确保其安全性和性能。移植过程中需要考虑算法的实现细节、密钥管理、算法性能优化等方面的问题。同时,还需要进行相关的测试和验证,确保移植后的算法能够正常运行并满足安全需求。 总之,SM2椭圆曲线公钥密码算法已经在我国得到广泛应用,并且有相关的政策要求在密码应用系统中使用该算法移植工作需要考虑算法的实现和性能优化,并进行相应的测试和验证。\[1\]\[2\] #### 引用[.reference_title] - *1* *2* *3* [sm2国密算法的纯c语言版本,使用于单片机平台(静态内存分配)](https://blog.csdn.net/qq8864/article/details/100582268)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值