摘要:1、USB模式 1.单模式 (1) host only, 使用于内部互联芯片USB做host的情况 (2) device only, 使用于内部互联芯片USB做device的情况 2. otg模式 (1) typec OTG: 基于typec接口 + cclogic的设计方案 (2) phy OTG
阅读全文
摘要:IIC 总线本身支持多主控,成为主控的必要条件是能够主动控制数据的传输和时钟频率。 总线空闲时,上拉电阻是SDA和SDL均保持高电平,IIC器件都是集电极开路输出,遵循“线与”逻辑 也就是说,任意器件输出低电平都会拉低信号线。 任何通信都是由master发起,master 发起传输需要先发送开始位,
阅读全文
摘要:USB Type-C 是什么? USB Type-C是一个全新的正反插USB连接器规范,能够支持USB 3.1(Gen1和Gen2)、Display Port和USB PD等一系列新标准,最高速率可达10Gbps,Type-C端口默认最高可支持5V3A,支持功率双向传输 PD是什么? USB PD(
阅读全文
摘要:RAM:Random Access Memory 随机存取内存 DRAM: Dynamic Random Access Memory 动态随机存取存储器,动态指的是需要周期性刷新维持电荷. 费电但是容量大,性价比高 SRAM: Static Random Access Memory 静态随机存取存储
阅读全文
摘要:内核代码启动完之后,linux进入加载根文件系统的阶段: 根文件系统首先本身是个普通又特殊的文件系统,普通是指,具有普通文件系统的存储数据文件的功能,里面存储着许多目录和文件 特殊是指,它是linux启动后第一个挂载的文件系统: 根文件系统之所以在前面加一个”根“,说明它是加载其它文件系统的”根“,
阅读全文
摘要:说bootloader之前,最好能温故而知新一下,想一想,我们之前玩的51单片机,stm32单片机,它们是怎么启动的。 无非是上电后,CPU开始取指令,总线按照寻址的命令,取出flash中的一条指令,然后译指,ALU执行运算,最后把结果写到CPU寄存器或者 ram中去。 但是考虑下面这样一段代码,我
阅读全文
摘要:DDR (Double Data Rate SDRAM)的带宽计算公式为: BandWidth = DDR频率 x ddr位宽 x ddr通道数 / 8bit * ddr效率 ddr效率一般是50% 比如:一块DDR为1000MHz,64位位宽, 双通道。 那么对应的带宽为:1000M x 64 x
阅读全文
摘要:前面一口气学了不少内容,中间遇到了一些问题,这里及时总结一下,一来是加深印象,巩固记忆 其次也可以把遗留问题明确一下,指导后续的知识点的学习。 不同编译器可能采用不同的名字修饰方法,导致产生的目标文件无法相互链接。这也是二进制不兼容问题的来源 __attribute__((section("Foo"
阅读全文
摘要:这个问题隶属于CPU设计的范畴 其等价问题为 CPU是如何获取指令和数据的,进一步的,指令和数据是否是分开存取的 普遍的说法是这样的,如果指令和数据分开存取,则是哈佛结构,否则是冯诺依曼结构 不要尝试去记忆这些结论,我们要去思考,去理解这个事情 以51内核的单片机为例,我们将编译后的bin文件烧录到
阅读全文