- 博客(72)
- 资源 (5)
- 收藏
- 关注
转载 理性VS激情,DDR内存的终极优化
http://hard.zol.com.cn/2004/0330/90618.shtml文: 有关内存优化的文章其实已经有很多了,可能大家都没觉得没什么了不起的,不就是那几个参数吗?这还用讲?但是,我相信 90% 以上的人并没有完全真正理解那些时序参数的含义。我敢说,目前很多的优化原则都是有问题的,甚至有误导的倾向! 本人在此之前曾有一篇专门探讨内存原理与相关参数的大型专题(文章发表于《...
2018-07-14 01:10:59 576
转载 逻辑电平匹配
连接3.3V 设备到5V 设备需要考虑到驱动器和接收器的逻辑电平是否匹配。.描述了用于5V CMOS,5V TTL 和3.3V TTL 的逻辑电平标准。可以看到,5V TTL 和3.3V TTL的逻辑电平是相同的,而5V CMOS逻辑电平与前两者是不同的。这在连接3.3V 系统到5V系统时是必须考虑的。(1) 5V TTL 装置驱动3.3V TTL 装置。5V TTL 和3.3V TT
2015-03-01 11:06:28 10529
转载 nand flash坏块管理OOB,BBT,ECC
0.NAND的操作管理方式 NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六字节外,通常至少把O
2015-02-08 09:59:22 873
转载 NAND flash 基础知识
NAND Flash的驱动程序设计http://hong60104.spaces.eepw.com.cn/articles/article/item/892051. 硬件特性:【Flash的硬件实现机制】 Flash全名叫做Flash Memory,属于非易失性存储设备(Non-volatile Memory Device),非易失性就是不容易丢失,数据存储在这类设备
2015-02-08 01:04:30 3743
转载 MLC、SLC NAND FLASH区别和架构对比
在线阅读本文:http://3y.uu456.com/bp_94ldc20xza9d31q9oe95_1.htmlMLC、SLC NAND FLASH区别和架构对比 MLC、SLCNANDFLASH区别;关于现在MP3有用MLC和SLC两种芯片的已经不;在说明MLCMP3之前我们先了解一下什么是MLC;什么是SLC和MLC?;SLC全称为Single-LevelCell,M;一般而言,
2015-02-07 23:39:28 4602
转载 ECC
为了能检测到单个位错误,把每256字节的数据划分为一张8x256共2048位的表,使用22位校验码进行校验,16位为行校验码,进行横向校验,6位为列校验码,按进行纵向校验。下图描述了这22位校验码产生的原理: 列校验:CP0:对所有字节的Bit 6,4,2,0进行异或操作的结果CP1:对所有字节的Bit 7,5,3,1进行异或操作的结果.
2015-01-24 00:18:34 699
转载 PCIe体系结构导读--第9章 流量控制
[转载]PCIe体系结构导读--第9章 流量控制 (2011-03-10 09:26:42)转载▼标签: 转载 原文地址:流量控制" style="text-decoration:none; color:rgb(107,95,36)">PCIe体系结构导读--第9章 流量控制流量控制(Flow Co
2015-01-18 19:14:10 3987
原创 PCIE_GT/S 8b/10b
GT/s —— Gigatransation per second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率。GT/s着重描述端口的速率属性PCIe总线物理链路间的数据传送使用基于时钟的同步传送机制,但是在物理链路上并没有时钟线,PCIe总线的接收端含有时钟恢复模块CDR(Clock Data Recovery),CDR将从接收报文中提取
2015-01-16 22:46:07 3114
原创 PCIE 层次结构
This document specifies the architecture in terms of three discrete logical layers: the Transaction Layer, the Data Link Layer, and the Physical Layer. Each of these layers is divided into two section
2014-12-19 23:26:14 2639
原创 EOS ESD
一、什麼是EOS? EOS为Electrical Over Stress的缩写,指所有的过度电性应力。当外界电流或电压超过器件的最大规范条件时,器件性能会减弱甚至损坏。 EOS通常产生于1.电源(AC/DC) 干扰、电源杂讯和过电压。2.由于测试程式切换(热切换)导致的瞬变电流/峰值/低频干扰。其过程持续时间可能是几微秒到几秒(也可能是几纳秒),很短
2014-12-19 22:54:49 1784
原创 ROOT COMPLEX
The capability to route peer-to-peer transactions between hierarchy domains层次结构域through a Root Complex is optional and implementation dependent并且取决于实现方式. For example, an implementation may incorpora
2014-12-17 23:41:04 3525
原创 PCIE link
link是两个设备之间的二对双向差分线连接起来的。时钟由数据中解码得到Signaling rate 信令速率– Once initialized, each Link must only operate at one of the supported signalinglevels. For the first generation of PCI Express technol
2014-12-17 23:05:24 4511
原创 linux命令
设备信息查看专题:1.查看CPU: cat /proc/cpuinfo 或top后再按11.1 cpu物理个数: cat /proc/cpuinfo|grep "physical id"|sort|uniq|wc -l1.2 每个cpu核数: cat /proc/cpuinfo|grep "cpu cores"|uniq1.3 每个物理cpu中逻辑cpu(core/threads)
2014-12-16 22:18:18 615
转载 Flash芯片的通病
Flash芯片在写入数据的时候有诸多效率低下的地方。包括现在常用的U盘以及SSD中的Flash芯片,或者Bios常用的EEPROM,它们都不可避免。1. Flash芯片存储的通病之一:Erase Before Overwrite对于机械磁盘来说,磁盘可以直接用磁头将对应的区域磁化成任何信号,如果之前保存的数据是1,新数据还是1,则磁头对1磁化,结果还是1;如果新数据是0,则磁头对1
2014-12-14 20:53:27 4505
转载 PCIE 设备扫描的过程
初步了解完PCI总线标准之后,我们接下来正式开始PCIe设备的漫游之旅。从我们按下PC的电源按钮开始,BIOS就接管系统控制权开始工作,它会先进行一些内存和设备的初始化工作(当然,也包括我们的PCI设备),由于商业上的原因,Phoenix等厂商的BIOS代码需要授权协议,在此,我们以另外一个款开源BIOS(openbios)为例,来剖析BIOS中,我们的PCIe设备是如何被找到以及初始化的。
2014-12-14 16:21:55 9138 1
原创 SSD
固态硬盘(Solid State Drives),简称固盘,固态硬盘(Solid State Drive)用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。其芯片的工作温度范围很宽,商规产品(0~70℃)工规产品(-40~85℃)。由于固态硬
2014-12-13 22:54:07 1096
原创 眼图--PCIE
1眼图基本概念1.1 眼图的形成原理眼图是一系列数字信号在示波器上累积而显示的图形,它包含了丰富的信息,从眼图上可以观察出码间串扰和噪声的影响,体现了数字信号整体的特征,从而估计系统优劣程度,因而眼图分析是高速互连系统信号完整性分析的核心。另外也可以用此图形对接收滤波器的特性加以调整,以减小码间串扰,改善系统的传输性能。用一个示波器跨接在接收滤波器的输出端,然后调整示波器扫描周期,使示
2014-12-13 20:51:32 14049 1
原创 PCIe总线规范与总线频率和编码的关系
在PCIe总线V1.x和V2.0规范在物理层中使用8/10b编码,即在PCIe链路上的10 bit中含有8 bit的有效数据;而V3.0规范使用128/130b编码方式,即在PCIe链路上的130 bit中含有128 bit的有效数据。在PCIe总线中,使用GT(Gigatransfer)计算PCIe链路的峰值带宽。GT是在PCIe链路上传递的峰值带宽,其计算公式为总线
2014-12-12 23:26:37 11212
原创 post===non posted transaction事务类型学习--PCIE学习笔记
、就其中posted 与non-posted transaction来说可以看PCI中的讲解1.3.2 Posted和Non-Posted传送方式PCI总线规定了两类数据传送方式,分别是Posted和Non-Posted数据传送方式。其中使用Posted数据传送方式的总线事务也被称为Posted总线事务;而使用Non-Posted数据传送方式的总线事务也被称为Non-P
2014-12-12 22:28:31 5007
转载 select,poll,epoll实现分析—结合内核源代码
select,poll,epoll都是IO多路复用的机制。所谓I/O多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据
2014-07-14 20:43:36 595
转载 C语言运算优先级
1优先级等级口诀圆方括号、箭头一句号, 自增自减非反负、针强地址长度,乘除,加减,再移位,小等大等、等等不等,八位与,七位异,六位或,五与,四或,三疑,二赋,一真逗。其中“,”号为一个等级分段。
2014-07-13 23:54:26 716
原创 判断一个二进制中的1个数
第二种方法的更好一些/* Note:Your choice is C IDE */#include "stdio.h"/*一个非负数的二进制有多少个1*/int get_n_1(unsigned int num){ int count=0; while(num!=0) { if(num&0x1) { count++; } num>>=1;
2014-07-13 22:40:07 368
转载 卡特兰数catalan
令h(0)=1,h(1)=1,catalan数满足递推式[1]:h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)例如:h(2)=h(0)*h(1)+h(1)*h(0)=1*1+1*1=2h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=1*2+1*1+2*1=5另类递推式[2]:h(n)=h(n-
2014-06-22 22:01:41 607
原创 除去最大、最小值后,还有多少个,strtok的应用
/* Note:Your choice is C IDE */#include "stdio.h"#include#include//输入一串字符,只包含“数字和“,”//找出其中最小的数字和最大的数字(可能不止一个),//输出最后剩余数字个数。//输入 "3,3,4,5,6,7,7"// 输出 3 void main(){ int count=0,i; i
2014-06-08 22:02:21 433
原创 字符串四则运算
简单四则运算:输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值:注:1、表达式只含 +, -, *, / 四则运算符,不含括号2、表达式数值只包含个位整数(0-9),且不会出现0作为除数3、要考虑加减乘除按通常四则运算规定的计算优先级4、除法用整数除法,即仅保留除法运算结果的整数部分。比如8/3=2。输入表达式保证无0作为除数情况发生
2014-06-08 17:55:46 1281
转载 关于头文件重复包含以及函数重定义问题
调试的问题出现这个问题还蛮奇怪的,a.h需包含statistic.h, main.c需包含a.h和statistic.h,导致了statistic.h重复包含,hsdm_queue_ctr重复定义。 关于重复包含和重复定义的问题,可根据下面的分析得到认识。 为什么用了宏名字定义检测头文件的重复包含可还是有重复定义的错误?我在一个头文件中定义了一个函数F, 整个头文件用:#ifnde
2014-06-06 00:18:51 3091
原创 不小于原数的最小不重复数
如果一个数字十进制表达时,不存在连续两位相同,则称之为“不重复数”。例如,105、1234和12121都是“不重复数”,而11、100和1225不是。给定一个正整数A,返回大于A的最小“不重复数”。A小于100000这个题目是华为xy
2014-06-05 23:17:13 979
原创 归并
#include "stdio.h"#include//归并排序;把src数组分成两部分有序的,然后合并。void merg(int src[],int start,int mid,int end,int temp[]){ int i=start,m=mid; int j=mid+1,e=end; int k=0; while(i<=mid&&j<=e){ if(src[i]<=
2014-06-04 13:55:43 411
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人