自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 ddr控制器随笔

下图是依据使用过的cadence ddr controller IP画出的SOC中常用的ddr controller的结构图。 ddr控制器的数据和指令输入来自AXI Bus,AHB Bus等,它们连接的是访存指令的发起方,如CPU, GPU, DMA控制器等。ddr控制器输出的数据和指令通过DFI连接的ddr phy访问外设ddr sdram。下面对Arbiter和Command Queue

2017-07-23 19:58:25 4987

原创 linux进程调度与管理(三)

本节内容介绍用于普通进程调度的完全公平调度类(Completely Fair Scheduler),它的基本原理是这样的:设定一个调度周期(sched_latency_ns),目标是让每个进程在这个周期内至少有机会运行一次,换一种说法就是每个进程等待CPU的时间最长不超过这个调度周期;然后根据进程的数量,大家平分这个调度周期内的CPU使用权,由于进程的优先级即nice值不同,分割调度周期的时候要加权

2017-07-21 20:37:48 857

原创 linux进程调度与管理(二)

转载请标明出处floater的csdn blog,http://blog.csdn.net/flaoter上节内容对linux进程的表示和常用基础知识等进行了说明,本节开始对进程管理进行说明。1 进程调度数据结构1.1 数据结构在介绍进程调度数据结构之前,先看一下task_struct中与进程调度相关的数据成员。struct task_struct{ int prio, static_pri

2017-07-19 21:45:07 664

原创 linux进程管理与调度(一)

进程的管理与调度是所有操作系统的核心功能。从内核的角度来看,进程是内核分配资源(CPU,Memory)的重要单元,是计算机用来管理这些资源的一种抽象。从本节开始,将对linux内核的进程管理与调度子系统进行分析,其中使用的内核版本是4.4。1 进程描述在linux内核中,每一个进程唯一对应一个struct task_struct结构体,内核通过这些task_struct的管理实现对进程的管理。此数据

2017-07-19 20:39:09 2007

原创 perf使用小结

1 IntroductionPerf是Linux平台一款性能分析工具,它的实现依赖于一个性能分析架构的内核子系统,并在应用层提供了简洁的命令行接口。 Perf可以分析指定应用程序的性能问题,也可以用来分析内核的性能问题。性能分析是基于内核提供的perf_events接口实现的,支持的events包括软件事件和硬件事件。软件事件分为 1. software events,例如context-swi

2017-07-15 12:05:20 2599

转载 掌握USB/HDMI/MHL/DP验证规范 高速接口传输一次上手

转载自http://www.istgroup.com/schinese/2_news/02_news_detail.php?ID=271本来打算写一篇关于MHL,HDMI和USB的文章,但是发现网上还没有MHL 2.0或3.0的spec供下载,担心自己不参考spec写出来会有错误,所以就在网上找了一篇文章进行转载。除了MHL, HDMI和USB外,这篇文章还对另一种常用视频通信协议DisplayPo

2017-07-12 21:46:44 8865 1

原创 linux SPI驱动框架(二) -- 设备驱动

之前文章http://blog.csdn.net/flaoter/article/details/50001133对linux SPI驱动框架的控制器驱动进行了介绍,本节内容对SPI从设备的设备驱动进行讲解。设备驱动关注的结构体主要有两个,struct spi_device描述spi从设备,struct spi_driver是从设备的设备驱动。struct spi_device { stru

2017-07-11 21:20:34 6818 4

原创 ARMv8简介

参考文献: 1. DDI0487A_a_armv8_arm.pdf 2. DDI0500C_cortex_a53_r0p2_trm.pdf 3. ARM_Trusted_Firmare_for_ARMv8-A.LCU13_.pdfArmv8 OverviewARMv7与Armv8的升级示意如下: Aarch64指令集Aarch64的32个通用寄存器引用和描述如下, 与Aar

2017-07-09 16:43:52 3299

原创 arm linux 页表创建

本文对arm linux页表创建函数进行说明。在http://blog.csdn.net/flaoter/article/details/73381695中对MMU使能之前的临时页表进行了说明,此文是对kernel中正式使用的页表创建过程进行说明。 arm linux使用两级页表,L1是pgd,L2是pte。其中L1页表共2048项,每项占用8bytes,每项对应2M内存,共占用2048*8=16

2017-07-03 22:07:44 2215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除