摘要:
自射手影音推出以来,生活中越来越多的时间开始被代码和各种Bug-Fix淹没。埋头在田里太久,常常会在一时之间忘记身处何方。所以偶尔上来透透气,顺便将一些经验和心得与大家分享。媒体播放工具,这里主要指视频播放,因为要面临庞大的兼容性和纷繁复杂的算法,从架构上看,能脱颖而出的体系屈指可数。大体来说业界主... 阅读全文
摘要:
一、前言Device Tree总共有三篇,分别是:1、为何要引入Device Tree,这个机制是用来解决什么问题的?(请参考引入Device Tree的原因)2、Device Tree的基础概念(请参考DT基础概念)3、ARM linux中和Device Tree相关的代码分析(这是本文的主题)本... 阅读全文
摘要:
一、前言一些背景知识(例如:为何要引入Device Tree,这个机制是用来解决什么问题的)请参考引入Device Tree的原因,本文主要是介绍Device Tree的基础概念。简单的说,如果要使用Device Tree,首先用户要了解自己的硬件配置和系统运行参数,并把这些信息组织成Device ... 阅读全文
摘要:
一、前言作为一个多年耕耘在linux 2.6.23内核的开发者,各个不同项目中各种不同周边外设驱动的开发以及各种琐碎的、扯皮的俗务占据了大部分的时间。当有机会下载3.14的内核并准备学习的时候,突然发现linux kernel对于我似乎变得非常的陌生了,各种新的机制,各种framework、各种新的... 阅读全文
摘要:
1. ARM Device Tree起源Linus Torvalds在2011年3月17日的ARM Linux邮件列表宣称“this whole ARM thing is a f*cking pain in the ass”,引发ARM Linux社区的地震,随后ARM社区进行了一系列的重大修正。在... 阅读全文
摘要:
1、前言 分频器是FPGA设计中使用频率非常高的基本单元之一。尽管目前在大部分设计中还广泛使用集成锁相环(如Altera的PLL,Xilinx的DLL)来进行时钟的分频、倍频以及相移设计,但是,对于时钟要求不太严格的设计,通过自主设计进行时钟分频的实现方法仍然非常流行。首先这种方法可以节省锁相环资... 阅读全文
摘要:
第一部分计数器以及实现第二部分 分频器以及实现计数器的功能就是对脉冲CP进行计数常用在分频,定时,产生节拍脉冲和脉冲序列,进行数字运算等计数器其实在设计中经常遇到的 计数的场合有很多比如流水线产品数量统计 定时固定长时间比如1s 10ms等计数器一般有三个功能1,计数不断加1 2,清零功能 3,进位... 阅读全文
摘要:
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,这是我们在很多地方都看见的解释FPGA的名词,但是到底是现场可编程门阵列呢?何时能用到现场可编程呢?今天我们看看怎么实现FPGA的现场可编程。先假设一种应用场合:在某个场合中FPGA内部硬件电路需要根据外部条... 阅读全文
摘要:
FPGA下载文件在实为装载数据到内部配置RAM中,然后初始化FPGA整个电路连线以及设置片内LUT的初始值,一个系统无论大小都会初始化整片FPGA,所以在同一款芯片中无论什么设计,下载文件大小都为固定值如下图所示,和MCU不一样,MCU会随着程序大小不一样产生二进制下载文件大小不一,两种下载含义也不... 阅读全文
摘要:
1. 应用背景1.1 亚稳态发生原因 在FPGA系统中,如果数据传输中不满足触发器的Tsu和Th不满足,或者复位过程中复位信号的释放相对于有效时钟沿的恢复时间(recovery time)不满足,就可能产生亚稳态,此时触发器输出端Q在有效时钟沿之后比较长的一段时间处于不确定的状态,在这段时间里Q端在... 阅读全文