Cortex

国内首创技术, USB双虚拟串口,全双工收发!

∥☆過路亽.° 提交于 2020-05-04 03:40:32
背景资料 众所周知,国内开发学习板80%以上的市场,已被 意法半导体 占领,铺天盖地的中文资料,众多新生力量 的加入,使意法半导体的DSC芯片逆袭成为众多高校电子信息工程的必修科目。事实上,NXP等众多厂家 芯片的实力更强,然而意法半导体在价格上以绝对优势占领了市场,尘埃落定,其它IC厂家只剩眼红而已。 桂林电子科技大学 ,主要使用NXP的Cortex-M3,北航各家都有,主要是ST的, 清华大学 2014年开始 布局ST公司的芯片研究,同时也不放弃50MHz以下的Cortex-M0,江苏的大学主要研究其它厂商的 Cortex-M4。现在随随便便一个电子专业的毕业生,都对Cortex-M3芯片了如指掌。 一、USB Serial tools 软件简介 USB Serial tools 是本人于2012-2013年业余制作的开发调试工具软件包,通过注册WINDOWS消息通知, 具备了USB虚拟串口设备插拔检测的能力,不同于传统的调试工具,该软件还可以让技术开发人员便捷地 查看USB虚拟串口设备的生产厂商信息。 二、USB双虚拟串口简介 意法半导体官方在2007-2013年,在多个Cortex-M3系列上实现了各种USB设备,其中包含 CDC 设备,即 USB虚拟串口,经过多年数个版本的更新,意法半导体的USB CDC例程仍然存在很多不足之处,和一些 BUG

华为海思麒麟1000处理器曝光

◇◆丶佛笑我妖孽 提交于 2020-05-01 05:10:58
在 IFA 展会上,华为正式发布了麒麟 990 系列处理器,其中麒麟 990 5G 首发了台积电 7nm+EUV 工艺,集成了 103 亿个晶体管,这点上比苹果 A13 处理器还要领先。 麒麟 990 是华为第一款 5G SoC 处理器,同时也是上市最早的 5G SoC 处理器,不过华为手里准备的 5G 处理器不止这一款,下一代麒麟 1000(暂定名)也准备差不多了,将会用上台积电 5nm EUV 工艺。 根据爆料,华为的麒麟 1000 处理器最近也完成了流片,这个速度仅次于苹果的 A14 处理器,预计会在用在明年的旗舰机上。 台积电的 5nm 工艺代号 N5,基于 EUV 极紫外微影(光刻)技术,根据官方数据,相较于 7nm(第一代 DUV),基于 Cortex A72 核心的全新 5nm 芯片能够提供 1.8 倍的逻辑密度、速度增快 15%,同样制程的 SRAM 也十分优异且面积缩减。 由于华为、苹果两家主要客户对 5nm 工艺的需求迫切,台积电日前再次上调了 5nm 工艺的产能,达到每月 8 万片晶圆的规模,量产时间也提前到了明年 Q1 季度。 按照目前的惯例,华为的麒麟 1000 处理器应该会等到明年的 Mate 40 系列手机上才会首发,不过现在 5G 竞争激烈,厂商的发布节奏都会变化,传闻苹果明年上半年都会有一款 5G 机型发布,那么华为明年上半年就推出 5nm 的麒麟

OK1046A-C SerDes通道分配和多路复用

你说的曾经没有我的故事 提交于 2020-04-30 14:54:49
相关推荐: https://www.forlinx.com/article_view_253.html LS1046A 处理器基于QorIQ LS系列架构,将四个Arm® Cortex®-A72处理器内核与数据通道加速和网络,网络连接,网络附加存储,打印和成像以及通用所需的网络,外部设置接口相结合。 其SerDes模块功能强大,相互关系稍微复杂,因此本文通过对CPU SerDes通道的相对关系的分析,以及 LS1046A 开发板对于SerDes配置的梳理,希望可以帮助用户在使用我们LS1046A开发板或者自己做一件的时候对SerDes通道的配置有一个清晰的思路。 1,SerDes配置方法 可通过设置以下寄存器对SerDes进行配置: ■SerDes 1配置: ·协议:使用RCW选择[SRDS_PRTCL_S1] ·PLL:使用RCW启用[SRDS_PLL_PD_S1] ·PLL参考时钟:RCW [SRDS_PLL_REF_CLK_SEL_S1] ·(速率由协议选择决定) ■SerDes 2配置: ·协议:使用RCW选择[SRDS_PRTCL_S2] ·PLL:使用RCW启用[SRDS_PLL_PD_S2] ·PLL参考时钟:RCW [SRDS_PLL_REF_CLK_SEL_S2] ·最大速率:使用以下方法选择: ·PCIe:RCW [SRDS_DIV_PEX_S2]

“中国芯”——飞凌嵌入式OKA40i-C开发板测评

浪子不回头ぞ 提交于 2020-04-30 14:54:00
相关推荐: https://www.forlinx.com/article_view_258.html 飞凌嵌入式正式推出了业内超高性价比的首款 国产工业级平台OK A40i-C 开发板 。基于 全志工业级A40i Cortex-A7 四核处理器,主频最高1.2GHz,内部集成Mali400 MP2 GPU图形处理器,接口丰富,在能耗比、性价比等方面表现极为突出。 下面请大家跟随攻城狮的节奏一起来了解下这款开发板。 ▲OKA40i-C 开发板 A40i是全志在智能工控领域的一款高性能、超高效处理器。A40i采用 ARM Cortex-A7内核,运行频率高达1.2GHz,配备Mali400MP2图形处理器及多种显示接口,并具有丰富的行业应用接口,主要应用于各种具有视频输出的工控行业。A40i配套使用的PMIC支持外部电源、USB、锂电池三种供电方式,并集成了供电路径选择和锂电池充放电管理功能,极大简化了终端产品的设计难度。 芯片框图: 核心板接口速度: 核心板接口资源: OKA40i-C具有稳定可靠的工业级产品性能和高性价比低功耗等优势,目前,搭载Linux操作系统,可广泛应用于媒体播放、数字标牌、通讯控制、医疗仪器、工业控制、交通控制、信息系统、金融设备、汽车、数字控制、军工和各种终端机市场等领域。下图是OKA40i-C开发板提供的底板资源。 开发板默认烧写的镜像

【我的Android进阶之旅】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题

巧了我就是萌 提交于 2020-04-30 12:55:21
文章目录 Android 设备的CPU类型(通常称为"ABIs") 一、 问题描述 二、解决方法 2.1、解决之前的截图: 2.2、解决后的截图: 2.3、解决方法: 2.4、建议 三、扩展知识 3.1App中可能出错的地方 3.2 其他地方也可能出错 3.2.1 混合使用不同C++运行时编译的.so文件 3.2.2 没有为每个支持的CPU架构提供对应的.so文件 3.2.3 只提供armeabi架构的.so文件而忽略其他ABIs的 四、关于google强制64位架构的规定 4.1 是否包含 64 位? 4.2 判断是否支持 64 位架构 4.2.1. AS 的 APK 分析器 4.2.2 使用 zipinfo 命令进行分析 4.3 在 64 位设备上测试应用 五、更多参考 Android 设备的CPU类型(通常称为"ABIs") armeabiv-v7a: 第7代及以上的 ARM 处理器。2011年12月以后的生产的大部分Android设备都使用它. arm64-v8a: 第8代、64位ARM处理器,很少设备,三星 Galaxy S6是其中之一。 armeabi: 第5代、第6代的ARM处理器,早期的手机用的比较多。 x86: 平板、模拟器用得比较多。 x86_64: 64位的平板。 更多可以查看链接 https://developer.android.google.cn/ndk

如何给嵌入式Linux打实时补丁?

人走茶凉 提交于 2020-04-30 10:21:22
相关推荐: https://www.forlinx.com/article_view_261.html 一、实时系统分类 实时系统可以分为硬实时(Safety-Critical,低延时,比如几十个us内)和软实时(几百个us~几个/几十个ms),硬实时通常跟高确定性、可靠性要求同时出现,如果达不到,可能会造成重大生命或者财产损失,比如说航天飞控、汽车制动系统、精密仪器等都有较高的硬实时要求。对于软实时,可靠性要求没那么高,即使出现了延迟,造成的损失可控,比如说音频失真,视频不顺畅。 二、已有方案 Linux 本身已经有硬实时的方案,比如来自风河的 RT Linux,或者西班牙一家研究所的 XtratuM + PartiKle,还有其他的比如 Xenomai,RTAI 等。另外,内核官方还有完全抢占内核(Preempt-RT Linux)的支持,这个在某些情况下也达到了硬实时要求,改补丁现在有OSADL维护。 然后就是各种优化,包括驱动(irq, preempt disable), spin lock 等使用,中断函数线程化,mdelay 替换为 usleep_range() 等。优化时需要用到很多工具,比如 Ftrace, Perf, Cyclictest, Oscilloscope 等。 硬件本身的低延迟设计、可靠性设计等也会严重影响系统的实时性,比如说 ARM Cortex A

Microsemi Libero使用技巧——FPGA全局网络的设置

两盒软妹~` 提交于 2020-04-30 01:45:52
前言 刚开始做Microsemi FPGA+SoC开发时,会用到几个ARM专用的IP Core,功能一复杂起来,就会遇到某些信号如rst_n不能分配到指定的引脚上的情况,IO类型为CLKBUF,并不是普通的INBUF,而且,这些引脚既不是MSS_FIO,也不是属于Cortex-M3专用的GPIO,怎么会就不能分配呢?曾经一度怀疑是软件的BUG问题。最近在一个FPGA工程中也遇到了这个问题,搜索了一些资料,算是彻底明白了,记录一下。 问题描述 最近在一个FPGA工程中分配rst_n引脚时,发现rst_n引脚类型为CLKBUF,而不是常用的INBUF,在分配完引脚commit检查报错,提示需要连接到全局网络引脚上。 Running Global Checker... Error:PLC002:No legal assignment exists for global net rst.n_c. Info:Uhlocking the driver or removing the region constraint for net rst nc may help to satisfy Error:PLC005:Automat ic global net placement failed. 尝试忽略这个错误,直接进行编译,在布局布线时又报错。 Error: PLC002: No legal

XILINX_zynq_详解(4)

本小妞迷上赌 提交于 2020-04-29 23:26:45
摘录一篇关于ZYNQ的一些概念: PS: 处理系统 (Processing System) , 就是与FPGA无关的ARM的SOC的部分。 PL: 可编程逻辑 (Progarmmable Logic), 就是FPGA部分。之所以叫PL,而不是叫FPGA,我想,原因主要是考虑到让搞软件的兔子们不要看了以后望而生畏。逻辑嘛,搞软件的也要讲逻辑是不?可编程,软件就是编程是不? ZYNQ,往大里说,就是两大功能块,PS 部分和 PL部分, 说白了,就是ARM的SOC部分,和FPGA部分。 下一个层级, APU部分: APU: 应用处理器单元(Application Processor Unit). 位于PS里面的中心位置。这个名字起的,就有点学问了。 APU这三个字,AMD公司曾经用过,特指全称是“Accelerated Processing Units”,加速处理器,它是融聚了CPU与GPU功能的产品,电脑上两个最重要的处理器融合,相互补足,发挥最大性能。XILINX 的APU与AMD的APU在缩写上就是截然不同的两个词, 不能混淆了。 APU 这个词,在Xilinx内部的术语中,也是撞车了的。 在XILINX 的 PowerPC体系中, 有一个辅助处理单元“Auxiliary Processing Unit” 的概念,指的是在PowerPC硬核外挂的浮点协处理器之类的单元。

谈谈IC、ASIC、SoC、MPU、MCU、CPU、GPU、DSP、FPGA、CPLD

ぐ巨炮叔叔 提交于 2020-04-29 20:57:35
IC (integrated circuit) 集成电路 :微电路、微芯片、芯片;集成电路又分成:模拟集成电路(线性电路)、数字集成电路、数/模混合集成电路; 模拟集成电路 :产生、放大、处理各种模拟信号(幅度随时间变化的信号); 数字集成电路 :产生、放大、处理各种数字信号(时间和幅度上离散取值的信号); 集成电路按用途分成: 专用集成电路(ASIC) 、通用集成电路; ASIC (Application Specific Integrated Circuit) 专用集成电路:是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。 目前用 CPLD (复杂可编程逻辑器件)和 FPGA (现场可编程逻辑阵列)来进行ASIC设计是最为流行的方式之一,它们的共性是都具有 用户现场可编程特性 ,都支持边界扫描技术,但两者在集成度、速度以及编程方式上具有各自的特点。 ASIC是对特定算法定制的芯片,所以效率是最高的 ,但是一旦算法改变,芯片就无法使用。 现代ASIC常包含整个32-bit处理器,类似ROM、RAM、EEPROM、Flash的存储单元和其他模块. 这样的ASIC常被称为 SoC(片上系统) 。 SoC (System On Chip) 片上系统 :MCU只是芯片级芯片,SOC是系统级芯片,它既像MCU那样有内置RAM,ROM的同时

痞子衡嵌入式:ARM Cortex-M文件那些事(2)- 链接文件(.icf)

a 夏天 提交于 2020-04-29 03:17:32
  大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是 嵌入式开发里的linker文件 。   在前一节课 源文件(.c/.h/.s) 里,痞子衡给大家系统地介绍了source文件,source文件是嵌入式工程里典型的input文件,那么还有没有其他类型的input文件?既然痞子衡这么提问了,那答案肯定是有啦。今天痞子衡要讲的linker文件就属于另一种input文件。   linker文件顾名思义就是嵌入式工程在链接阶段所要用到的文件,source文件在编译过程完成之后(此时已经是机器可识别的二进制机器码数据),需要再经过链接器从而将二进制数据有序组织起来形成最终的二进制可执行文件,该二进制文件最终会被下载进芯片内部非易失性存储器里。linker文件就是用来指示链接器如何组织编译生成的二进制数据。   linker文件是跟IDE息息相关的,本文以IAR EWARM为例介绍linker文件,其他IDE下的linker文件可触类旁通。 一、 嵌入式系统中的section   在讲linker文件之前,痞子衡必须先跟大家理清一个嵌入式系统中很重要的概念-section。那么什么是section?我们写的C或者汇编source文件里都是各种应用代码,这些代码按功能可以分为很多种类,比如常量、变量、函数、堆栈等,而相同类型的代码的集合便是一个section