QEMU
文章平均质量分 95
MyeDy
固件开发
展开
-
如何利用qemu搭建SOC protoype:80行代码实现一个Cortex M4 模拟器
随着国内芯片公司越来越多,越来越多的底层程序员需要在pre silicon阶段就要开发代码。而在pre silicon阶段测试方式有多种:方式优点缺点RTL simulation可以验证最准确的硬件行为,可以测试SOC相关代码仿真速度非常慢,且rtl freeze之前硬件有bugFPGA/ZEBU emulation可以验证部分硬件行为,速度相对RTL simulation快价格昂贵,难以布署大量测试,且有些硬件没法仿真软件模拟器,如QEMU速度最快,可以布署大原创 2021-01-22 14:51:52 · 5050 阅读 · 8 评论 -
imx6ull-qemu 裸机教程2:USDHC SD卡
文章目录1 6UL的USDHC简介1.1 USDHC Block Diagram1.2 USDHC支持的模式1.3 外部信号1.4 Data Buffer1.5 ADMA1.5.1 ADMA Engine1.5.2 ADMA2 Descriptor格式1.6 Register2 SD协议简介2.1 SD总线拓扑2.2 SD总线协议2.3 SD卡功能描述3 QEMU SD卡读写demo3.1 USD...原创 2020-01-29 21:50:25 · 5586 阅读 · 0 评论 -
imx6ull-qemu 裸机教程1:GPIO,IOMUX,I2C
无意间搜到了韦东山老师的6ul网站,上面有一个6ul的qemu仿真器,下载下来用了用,非常好用,有UI,比原装的qemu-system-arm提供的6ul开发板多了很多功能。下面贴出的就是韦东山老师的qemu网站:百问网imx6ull-qemu但是默认的跑了linux,没有裸机的例程。所以本文写了几个裸机的程序以供参考学习6UL芯片。本教程源码目标实现以下模块的裸机程序:GPIO L...原创 2020-01-29 09:53:07 · 5761 阅读 · 9 评论 -
自制嵌入式操作系统 DAY2
话不多说,直接进入正题,今天要实现的便是RTOS任务相关的所有功能1 临界区保护本节代码在05_critical下为什么需要临界区保护呢,请看下图: 当task1要对共享资源进行读-改-写操作时,在写回之前被某一事件中断打断切换到task2,而此时task2恰巧也有修改共享资源x的代码,此时task2将共享资源修改成了11,当完成这个操作后,task2交出cpu控制权,此时R...原创 2018-02-21 18:17:22 · 717 阅读 · 0 评论 -
自制嵌入式操作系统 DAY3
今天实现事件控制块,存储管理以及定时器。1 事件控制块本节代码位于12_event中什么是事件控制块呢?可以这样理解,前面学习我们已经知道,创建一个任务需要给这个任务分配一个任务控制块,这个任务控制块存储着关于这个任务的重要信息。那么,事件控制块就好比任务里的任务控制块。它存储着这个事件的重要信息,我们说创建一个事件(信号,邮箱,消息队列),其本质的过程就是初始化这个事件控制块...原创 2018-03-04 20:13:11 · 712 阅读 · 0 评论