首页
课程体系
就业班
精心辅导 就业导向
大班课
周期上线定时答疑
体验课
体验最小版的正式课
随时学
随到随学 灵活学习
公开课
深刻理解摸个知识点
资料下载
问答
就业指导
登录
Arm Cortex-A系列处理器及其相关系统设计
高性能SoC芯片设计系列课程之Arm篇
共
36
课时 / 课程有效期
365
天
/ 服务器有效期
6
个月
上机实操
¥
5999
立即购买
难度: 高级
1396人已购买
课程介绍
课程目录
课程问答
第一章 课程须知
1 - 1 课程提升
进入课程
第二章 处理器微架构基础
2 - 1 流水线概述
进入课程
2 - 2 流水线危害
进入课程
2 - 3 流水线总结
进入课程
2 - 4 分支预测
进入课程
2 - 5 分支预测提升
进入课程
2 - 6 异常及流水线限制
进入课程
2 - 7 超标量及超级流水线介绍
进入课程
2 - 8 指令并行性介绍
进入课程
2 - 9 重命名及取指令
进入课程
2 - 10 为什么需要Cache?
进入课程
2 - 11 Cache设计
进入课程
2 - 12 Cache策略
进入课程
2 - 13 多级Cache
进入课程
2 - 14 Cache性能
进入课程
第三章 Cortex-A处理器架构
3 - 1 ARMv8-A架构介绍
进入课程
3 - 2 特权等级
进入课程
3 - 3 Aarch64寄存器
进入课程
3 - 4 指令集
进入课程
3 - 5 Cortex-A处理器
进入课程
3 - 6 DSU
进入课程
3 - 7 处理器的配置和仿真
进入课程
3 - 8 代码的verdi整理
进入课程
第四章 处理器内存管理
4 - 1 Memory类型
进入课程
4 - 2 共享特性
进入课程
4 - 3 Memory管理
进入课程
4 - 4 table描述符
进入课程
第五章 AXI NIC400实战
5 - 1 主流总线互联IP介绍
进入课程
5 - 2 NIC-400常见概念
进入课程
5 - 3 视图介绍
进入课程
5 - 4 架构视图
进入课程
5 - 5 地址视图
进入课程
5 - 6 实现视图
进入课程
5 - 7 配置流程
进入课程
5 - 8 AXI总线死锁原因
进入课程
5 - 9 CDAS
进入课程
5 - 10 Single Slave Scheme
进入课程
5 - 11 Single Slave Per ID
进入课程
5 - 12 Single Slave Per ID Reg
进入课程
5 - 13 演示+练习
进入课程
5 - 14 实战案例一:系统介绍
进入课程
5 - 15 实战案例一:操作配置
进入课程
5 - 16 实战案例一:系统仿真
进入课程
5 - 17 实战案例二:系统介绍
进入课程
5 - 18 实战案例二:操作配置
进入课程
5 - 19 实战案例二:结果分析
进入课程
第六章 ACE总线及总线互联
6 - 1 ACE介绍
进入课程
6 - 2 ACE Transactions
进入课程
6 - 3 ACE Transactions
进入课程
6 - 4 CCI总线互联
进入课程
第七章 CoreSight调试系统
7 - 1 CoreSight介绍
进入课程
7 - 2 系统发现
进入课程
7 - 3 DAP
进入课程
7 - 4 APBIC
进入课程
7 - 5 ECT
进入课程
7 - 6 CoreSight总线
进入课程
7 - 7 CoreSight时间戳
进入课程
7 - 8 CoreSight ETM
进入课程
7 - 9 CoreSight STM
进入课程
7 - 10 CoreSight TPIU
进入课程
7 - 11 CoreSight TMC
进入课程
7 - 12 Prcoessor Debug
进入课程
7 - 13 CoreSight System Design
进入课程
第八章 中断控制器
8 - 1 Generic Interrupt Controller
进入课程
8 - 2 GIC-500 Interrupt Controller
进入课程
8 - 3 上机:GIC500
进入课程
第九章 系统启动
9 - 1 处理器启动流程1
进入课程
9 - 2 处理器启动流程2
进入课程
9 - 3 多核启动
进入课程
第十章 Trustzone安全架构
10 - 1 安全介绍
进入课程
10 - 2 TrustZone架构
进入课程
10 - 3 ARMv8-A TrustZone架构
进入课程
10 - 4 Trustzone Memory系统架构
进入课程
10 - 5 TrustZone 外设
进入课程
0
实验1 按流程做编译报错
你的操作步骤是什么? 我这边试了下,没什么问题,直接进入到 `execution_tb`里面,执行 `make vcs_compile`。 可以在微信里,联系我,帮你解决。
共1个回答>>
0
shareable in MMU descriptor
shareable 的两bit 定义了non-shareable, inner shareable , outer shareable, 还有一个是reserved,其实就可以认为是system。 跑同一个操作系统的一般都是在inner domain,inner domain外的比如DMA这种就在outer domain。 这个属性是通过page table里面去定义的,所以是软件定义的。哪些在system domain在架构定义的时候,就定义好的
共1个回答>>
0
Cacheable VS. non-cacheable
Cacheable就是数据可以通过cache去存放和读取。 non-cacheable就是数据读写要bypass cache,直接对memory进行访问。 DMA 严格意义上来说DMA是个master而不是device,device偏向于总线的slave。只是DMA有那个DMA的寄存器,寄存器接口看做是slave,对DMA寄存器的访问一般是不能够cacheable,也就是non-cacheable。
共1个回答>>
0
cortexa53 compile error
把MP030-BU-50000-r0p4-51rel2/cortexa53/logical/testbench/shared/tools/bin/execution_tb_generator.pl开头的 !/usr/bin/perl 修改成 !/tools/arm/ad_3p_tools/perf_5_8_8/linux/bin/perl 出现这个问题的原因是execution_tb_generator.pl这个脚本使用系统默认的perl执行,系统默认的是5.10.1. 而编译要用到的在这个路径下:/tools/arm/ad_3p_tools/perf_5_8_8/linux/bin/,版本是5.8.8. 可以通过perl -v来查看版本号。
共1个回答>>
0
one-level dynamic branch predictor的判断条件是什么
这个branch address是branch 指令的地址
共1个回答>>
0
为什么含有write through的地址就是non-cacheable?
这个问题不太明确,能截屏给我具体是哪个slice吗?
共1个回答>>
0
snoop filter back invalid
共0个回答>>
0
make pre_ca53出错
你需要在外面把makefile拷贝到你执行命令的目录下,才能执行。
共1个回答>>
0
Translation table一般存放在哪?
软件存在DDR,可以被缓存。而TLB entry在CPU核的MMU内部buffer。安全页表存放于安全区域,而操作系统页表存放于非安全区域
共1个回答>>
+1
【实验1】仿真执行make命令出错
这个是脚本问题,建议从新更新脚本再跑,并确认脚本放置的路径。
共1个回答>>
0
关于Larger Cache Blocks策略对Cache Miss的影响
cache line增大一倍,相同的cache size情况下,能装的cache line数目自然会下降一半; 这就导致Capcity Miss的增加;MISS以后会有更多的数据需要refill,因此增加了miss penalty; 好处是cache line数据下降带来了tag数据的减小;
共1个回答>>
0
timestamp 如何实现halt功能
ARM的手册提到,如果tsgen是用在tscnt的话,就不用halt,一直走就行。只有用作cntvalue也就是正常功能系统定时用的话才需要暂停,这个可以在soc自己实现
共1个回答>>
0
Write Evict
共0个回答>>
0
对于不进入WB阶段那些指令怎么处理exception情况?
每个stage都会记录下来那个PC的地址以及要不要跳转到异常,所有没有WB阶段的话,也可以跳转
共1个回答>>
0
Register File的结构与用途
结构上有些区别,但bit的存储这块儿, 晶体管的组成是有些不同, 一般register file 会比SRAM类型的访问速度快些。 但是容量没有SRAM类型大
共1个回答>>
0
coherence一致性
SCU的说法是对的,不过SCU本身就是一种hardware coherence的做法,意思就是硬件自动去保持一致性。而相对的software coherence的做法,就是通过软件去保证数据的一致性。
共1个回答>>
0
7/8指令执行单元和同时发射3条指令的区别是什么
cpu取指令,然后每个时钟周期可以解码并发射三条指令。 执行指令共有7/8个执行单元,有些是逻辑,有些是数据存取,有些是向量。由于指令只能发射三条,所以同一周期不可能同时让这些执行单元同时拿到数据并开始执行计算任务。
共1个回答>>
0
在多核系统中,如果Core 0发送断点暂停运行,此时通过CTI/CTM通知其他的Core暂停运行。此时其他的Core是否会慢于Core 0暂停?
是会慢一些周期,但是不会影响那么大,因为你通过工具调试的时候,是感觉不出来这些周期的延迟的。
共1个回答>>
0
cache stash
就是让外设可以直接把数据塞到cpu的内部一级二级缓存。这样cpu如果取数据,直接就可以拿到,而不必去ddr或者三级缓存拿,大大减少延迟。在网络处理器等场景中,此类设计非常有用,可以提高网络包转发性能很多倍。
共1个回答>>
0
关于Tag 和Index的问题
一般L1 instrcution cache 用VIPT的话比较多,L1 Data cache用PIPT的比较多,对于instruction cache来说,只是读操作,使用VIPT的话效率会更高一些,而对于L1 Data cache来说,如果使用VIPT的话,在cortext switch的时候,需要把Cache line都invalidate,这样效率太低了。
共1个回答>>
课程推荐
芯片测试DFT实战
¥
1199
懂概念,会工具,熟流程,动手做
上机实操
838人已购买
DDR 全面解析 + 实战
¥
1999
掌握SoC的核心技术:memory子系统
上机实操
939人已购买
SystemVerilog入门
¥
1599
讲解+实验
上机实操
690人已购买
AHB2APB IP的UVM实战项目验证
¥
2299
UVM实战项目验证
项目实战
595人已购买
Innovus后端设计
¥
1799
理论+上机实操教你玩转Innovus
上机实操
915人已购买
PCIe全面解析
¥
1099
掌握SoC的核心技术:I/O子系统
知识讲解
693人已购买
温馨提示
支付定金后记得将支付截图发给我们的课程顾问!
新学员请通过下方二维码加课程顾问咨询
打开微信
,点击底部发现使用
"扫一扫"
分享该页面
复制您的专属链接
您的课程已过了有效期了 ,您可以先择两种方式延长学习:
通过续费方式延长半年
您只需要支付目前价格的10%即可延长半年的课程内容学习,但仅限课程视频和图文内容,不包括实训机的使用;如果您需要延长实训机的使用,请在对应的实训小节里进行续费。
免费延长一个月
您可以通过以下二维码联系我们运营人员,获取宣传海报,并分享到朋友圈24小时(不可分组)。
取消
确定