自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Xilinx FIFO Generator的使用经验

环境:配置FULL flag在reset后为0测试方法:FIFO 设置为IndependentClock Block RAM,depth设置为16。用一个BRAM Controller写FIFO,用另一个BRAM Controller读FIFO。 1. FIFODepth是2的整数次幂,但是实际可用的要减去1,即2^N-12. 在初始状态:Almost Empty=1,Empty=

2014-11-20 12:42:42 16101

原创 Linux下的hrtimer高精度定时器

hrtimer高精度定时器,可做到ns级,此处做到毫秒如下例:注:实际是为纳秒级,由此处ktime_set(const long secs, const unsigned long nsecs)决定的,参数下此处参数即可实现纳秒级。

2014-07-30 20:04:43 13006 3

转载 实例探讨工作队列(work queue)的工作原理

工作队列(work queue)是另外一种将工作推后执行的形式,它和tasklet有所不同。工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行。这样,通过工作队列执行的代码能占尽进程上下文的所有优势。最重要的就是工作队列允许被重新调度甚至是睡眠。    那么,什么情况下使用工作队列,什么情况下使用tasklet。如果推后执行的任务需要睡眠,那么就选

2014-07-30 19:50:15 3112

转载 Linux workqueue工作原理

1. 什么是workqueue       Linux中的Workqueue机制就是为了简化内核线程的创建。通过调用workqueue的接口就能创建内核线程。并且可以根据当前系统CPU的个数创建线程的数量,使得线程处理的事务能够并行化。workqueue是内核中实现简单而有效的机制,他显然简化了内核daemon的创建,方便了用户的编程.      工作队列(workqueue)是另外一

2014-07-30 19:26:06 590

原创 Xilinx SDK中指定变量的物理位置

Xilinx SDK使用的是GCC,实际上这个方法也适用于所有GCC源码。首先在声明变量的时候在后面增加attributeint matrix[16][16384] __attribute__((section(".matrix")));然后在Linker Script里面做如下修改:1. 双击打开lscript.ld,在GUI的Available Memory

2013-11-01 15:34:34 5554 1

原创 Xilinx SDK BSP中对CPU_ID的使用

创建Xilinx SDK BSP时,要指定在哪个core上运行,这个选项对源码的影响如下:xparameters.h里面的宏定义不同:/* Definition for CPU ID */#define XPAR_CPU_ID 1xscugic_hw.c里面int XScuGic_DeviceInitialize(u32 DeviceId)

2013-10-30 18:10:22 4067

转载 华为老员工谈华为终端的来龙去脉

本文来自一位华为老员工写的看华为系列,通过常年追踪报道华为的记者冀勇庆的博客首发。编发如下,小标题为虎嗅所加:华为做手机应该是不知不觉进入这个业务,至少在很长的一段时间之内,公司并不怎么太重视终端业务。受小灵通刺激当初,华为是在做小灵通的时候切入终端业务的。进入小灵通的手机业务完全是被UT斯达康给拖入进去的,大家都知道UT斯达康由于小灵通业务一时风光无限, 并开始瞄准华为的

2013-02-19 10:36:38 1354

原创 通过PLD指令提升软件性能

ARM对PLD指令的详细说法是:Preload Data and Preload Instruction. The processor can signal the memory system that a data or instruction load from an address is likely in the near future.PLtype{cond} [Rn {

2013-01-24 16:54:58 6954 2

转载 FP寄存器及frame pointer介绍

理论上来说,ARM的15个通用寄存器是通用的,但实际上并非如此,特别是在过程调用的过程中。PCS(Procedure Call Standard for Arm architecture)就定义了过程调用中,寄存器的特殊用途。Role in the procedure call standardr15 PC The Program Counter.r14 LR The Link

2013-01-24 16:27:03 804

原创 ARM架构中的通用寄存器

By default, the assembler predeclares the following register names:    a1-a4 scratch registers, synonymous with r0-r3    v1-v8 variable registers, synonymous with r4-r11    sb and SB stack bas

2013-01-24 16:16:14 1067

翻译 GCC的参数-ftree-vectorizer-verbose=n

This option controls the amount of debugging output the vectorizer prints. This information is written to standard error, unless ‘-fdump-tree-all’ or ‘-fdump-tree-vect’ is specified, in which case it

2013-01-22 12:00:29 2508

原创 ARM Cortex-A9 NEON性能初步测试

最近在ZC702上对ARM Cortex-A9的NEON性能做了些测试。测试代码如下: .balign 4 .global neon_best_pipelne .armneon_best_pipelne: .rept 10000 vmla.f32 q10, q0, q5 vmla.f32

2013-01-22 11:22:01 4656

转载 GCC汇编源码中的.rept关键字

.rept countRepeat the sequence of lines between the .rept directive and the next .endr directive count times.For example, assembling.rept 3.long 0.endris equivalent to assembling.long 0

2013-01-21 11:52:26 4766

翻译 GCC汇编源码中的alignment

GCC支持的和align有关的directive共有三个,如下所示:.align abs-expr, abs-expr, abs-exprPad the location counter (in the current subsection) to a particular storage boundary. The first expression (which must be ab

2013-01-21 11:30:36 1684

转载 出租司机给微软高管上的一堂生动的MBA课

我要从徐家汇赶去机场,于是匆匆结束了一个会议,在美罗大厦前搜索出租车。一辆大众发现了我,非常专业的、径直的停在我的面前。这一停,于是有了后面的这个让我深感震撼的故事,象上了一堂生动的MBA案例课。为了忠实于这名出租车司机的原意,我凭记忆尽量重复他原来的话。“去哪里……好的,机场。我在徐家汇就喜欢做美罗大厦的生意。这里我只做两个地方。美罗大厦,均瑶大厦。你知道吗?接到你之前,我在美罗大厦门口

2013-01-21 11:07:43 854

原创 ARM GCC内联汇编(Inline Assembly)的一些参考资料

ARM GCC Inline Assembler Cookbookhttp://www.ethernut.de/en/documents/arm-inline-asm.html简评:用的ARM指令集,写的比较详细。英文版,有空时可以尝试翻译一下。GCC-Inline-Assembly-HOWTOhttp://www.ibiblio.org/gferg/ldp/GCC-I

2013-01-17 19:44:42 2030

原创 Linux下压缩工具和压缩算法的比较

压缩工具GZIP,BZIP2和LZMASH的比较:1. 压缩效率(压缩后的文件越小,效率越高)GZIP 2. 压缩时间:GZIP 3. 解压缩时间:GZIP 参考文献:A Quick Benchmark: Gzip vs. Bzip2 vs. LZMAArchiver comparison 仅仅比较了压缩比和压缩时间,也证明了上述结论。7-Zip使用LZMA

2013-01-17 19:11:56 13800

原创 GCC下使用Inline Assembly的初步心得

以前主要手写汇编,今天尝试用了下内联汇编(Inline Assembly),出了点问题,特此做个总结。=====================================================================开发环境:Xilinx ISE 14.4 EDK编译器版本:gcc version 4.6.3 (Sourcery CodeBench Lite

2013-01-17 18:52:43 1117

原创 Xilinx ISE 14.2&14.4 Compiler比较

缺省情况下:Xilinx ISE 14.2的编译器位于c:\Xilinx\14.2\ISE_DS\EDK\gnu\arm\nt64\bin,版本为gcc version 4.6.1 (Sourcery CodeBench Lite 2011.09-49)Xilinx ISE 14.4的编译器位于c:\Xilinx\14.4\ISE_DS\EDK\gnu\arm\nt\bin,版本为gcc

2013-01-17 18:19:21 3122

转载 关于技术学习的思考

感悟: 1. 技术只是一种工具,重要的是用它要达成的目标。学习技术的目的也应该是为了达成自己的人生目标,所以不要为了学习技术而去学习技术。2. 要始终保持对自己所在行业的趋势和变化的敏感,学习要有一定的前瞻性,不要太被公司的工作左右。但是实际上,工程师的有效时间大部分是在公司工作,业余时间只能占一小部分,所以选择一个自己感兴趣的工作并努力做好也是很重要的。3. 简单的看书跑跑例程只

2013-01-17 17:11:24 1000

转载 有感于同事的离职

感悟:1. 工作最终是为了自己,在工作中,不能只是抱着拿一份钱做一份工的想法,要始终思考何从工作中学习和吸取知识、经验和阅历来丰富自己,否则在职场上会路越走越窄的。2.世界始终在变化,要始终保持对变化的敏感,居安思危,时刻准备着迎接新的变化。Stay foolish, stay hungry。================我的一位同事即将离职,不是因为自己想走,也不能说是

2013-01-17 17:03:16 650

转载 Clobbering在wikipedia上的定义

In software engineering, clobbering a file or computer memory is overwriting its contents. The Jargon File defines clobbering as "overwrit[ing], usually unintentionally: 'I walked off the end

2013-01-17 16:55:39 471

转载 400电话和800电话的区别

400电话和800电话都是电信运营商为企业提供的全国统一的10位电话号码,企业申请400、800电话号码对外公布一个400热线电话号码,内部可转接多部电话,就像构架了一个呼叫系统一样,能够迅速提升企业形象。400电话是800电话的升级版本,现在一般企业都选择400电话做为公司的服务电话。400电话:手机和固定电话都可以拨打,主叫方付当地市话费,被叫方付长途费。800电话:只能固定电话拨

2012-12-12 12:35:41 829

转载 IT寓言:双桥故事

两个老工程师坐在一起聊天,炫耀他们自己做过的最伟大的项目。其中一个工程师讲述他说如何设计他此生建造的最大的一座桥梁。 “这是一座横跨大峡谷的大桥,”他对他的朋友说。“一个又宽又深的大峡谷。我们花了两年时间研究地质结构,选择建设地点。然后我们雇用最能干的人来设计大桥,这又用去了5年。我们跟最大的工程公司签约,让他们修建架构,桥塔,收费亭,以及用于连接大桥和高速公路的道路。公路桥的下层

2012-12-05 17:34:41 785

原创 ZC702开发板简介

最近拿到了一块Xilinx的ZC702rev D开发板,准备上手好好玩玩。主芯片Zynq-7020里面集成ARMCortex-A9双核和Xilinx的Artix 7FPGA,可以尝试嵌入式软件和FPGA协同开发,可玩度非常高。 先上个图。板子的基本参数:Zynq-7000 XC7Z020-1CLG484C AP SoC (667MHz)Note: Zyn

2012-12-05 17:05:33 8231 1

原创 VMWare Ubuntu下写SD卡很慢

现在很多时候做demo都是用dd把整个SD card dump成一个image。但是用dd写回操作的时候,Linux安装在VMWare上比安装在硬件上速度要慢很多。如果用dd写回,速度差距大约有8-12倍,即使是在文件系统下拷贝文件,速度差距也有2-3倍。

2012-12-05 16:40:39 853

转载 Linux下显示dd命令的进度

Linux下显示dd命令的进度:dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000想要查看上面的dd命令的执行进度,可以使用下面几种方法:比如:每5秒输出dd的进度方法一:watch -n 5 pkill -USR1 ^dd$方法二:watch -n 5 killall -USR1 dd

2012-12-05 16:38:19 720

原创 Linux的三种内核配置界面

Linux的内核配置界面:make config、make menuconfig、make xconfig1. make config是有问必答的方式,每个内核选项它都会问你要还是,即使是用户不关心的选项,选错了一个就必须从头再来一遍,用起来很不方便。2. make menuconfig提供一个基于文本的图形界面,键盘操作,可以只修改感兴趣的选项,一般推荐用这个。它依赖于n

2012-12-05 16:36:44 3960

转载 一些特殊HTML显示格式

一般的,在线HTML编辑器支持的功能会比较有限,有些复杂的显示效果做不出来。而MS WORD输出的tag很多在线HTML编辑器不认。好在Copy/Paste的HTML一般Online HTML Editor还认,所以在这里保存了一些可能会用到的HTML显示格式,方便以后写blog用。sudo apt-get install libncurses5-dev

2012-12-04 19:41:34 339

空空如也

空空如也

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

TA关注的人

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