- 博客(29)
- 资源 (14)
- 收藏
- 关注
原创 结合实践写了第二期关于低功耗的水文,欢迎讨论
结合低功耗方案设计上观点,关联这些之前想不清楚的系统级功耗联系点,抛砖引玉,希望有帮助和引出新的讨论点。
2024-06-27 13:55:38
132
原创 SSD nvme协议低功耗设计
分享一篇SSD低功耗协议设计实践总结,希望对大家设计nvme的低功耗feature或者做到最佳的低功耗方案提供一点思路,这个方案我参与了2代的开发,终于做完善了,做成一件事实现方案即可,做好一件事需要充分理解资源的限制并在限制条件容许的条件下不断的完善设计方案,一个方案的完善需要深入思考产品化的问题以及不断的去总结实验数据等,为公司写篇水文留作纪念。
2022-11-10 10:53:19
661
3
原创 Gerrit code update
merge: flow压缩自己branch为一个点:git rebase -i 7d228a192. Git commit 合并退出编辑commit 退出git强制push到自己的branchgit push origin -f HEAD强制push fail:先删除远程分支:git push origin :br_lp_rebase_90110 Push本地代码......
2019-06-18 11:06:43
723
原创 PCI总线的学习与理解
1. 基本概念存储器域: 包含CPU域 和 DRAM域, CPU域地址空间:CPU所能直接访问的地址空间集合, CPU域边界:CPU所能控制的数据完整性边界,边界由:memory 指令的作用范围确定。 DRAM域:dram控制器所能访问的地址空间集合 PCI总线域:由pci设备所能直接访问的地址空间组成 处理器域:能够访问的地址空间集合,由存储器域以及外部设备域组成。///设备连接方...
2019-03-28 11:26:25
730
原创 一些调试的小设计
1. 串口打印显示红色 MSGOUT_LLM("[STARBLAZE_DDR_ECC] \033[31m[inline ecc0 CFG(0X%X)]\033[0m\n", REG_U32(0XDFE4004c));
2018-10-24 14:34:21
242
转载 C语言中 malloc函数用法(收藏)
博客园首页新随笔联系订阅管理C语言中 malloc函数用法 昵称:无形的风一、malloc()和free()的基本概念以及基本用法:1、函数原型及说明:void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL
2018-06-26 10:09:58
626
原创 NVME协议分析仪解析
1. identify info trace1. 过滤2.读取identify数据红框中就是我们配置的2. TLP(1)TC: 与QoS相关,pcie总线规定了8种类型,TC0~TC7,default值为0,pcie设备使用TC区分不同类型的数据传输,如使用TC7传递一些实时性要求高的控制信息,TC0传递一般信息。(2)TH:为1表示当前TLP中含有TPH(...
2018-06-25 18:46:24
5034
6
转载 18、malloc函数用法(完善总结)
一、malloc()和free()的基本概念以及基本用法:1、函数原型及说明:void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。关于分配失败的原因,应该有多种,比如说空间不足就是一种。void free(void *FirstByte):该函数是将之前用malloc分配
2017-10-23 11:35:03
482
转载 17、gcc的__builtin_函数介绍
原文:http://blog.youkuaiyun.com/jasonchen_gbd/article/details/44948523GCC提供了一系列的builtin函数,可以实现一些简单快捷的功能来方便程序编写,另外,很多builtin函数可用来优化编译结果。这些函数以“__builtin_”作为函数名前缀。很多C标准库函数都有与之对应的GCC builtin函数,例如strcpy()有对应的_
2016-12-16 11:57:25
1613
原创 16.git使用总结
1、下载资源软件:Git-2.10.0-64-bit.exe学习资料:https://git_scm.com/book/zh/vz https://git_scm.com/book/en/vz2、your ID$ git config --global user.name "sheng"$ git config --global user.email shengxxx
2016-09-29 20:09:02
477
原创 15、vs2010实践中遇到问题汇总
1、VS2010生成系统路径设置解决编译出现的路径不对问题----VS2010----project----XX配置属性----C/C++------常规-------附加包含目录(在这里添加自己新建文件的目录)2、 vs2010 编译报错 C1033: cannot open program database运行时取消兼容模式就可以了
2016-03-07 19:21:06
559
原创 15、VS2013编写程序时scanf出现的编译错误
今天随手练习一下桶排序算法,很简单如下:#include "stdafx.h"#include #include //#define _CRT_SECURE_NO_DEPRECATEint _tmain(int argc, _TCHAR* argv[]){int a[11];int i, j, input;for (i = 0; i {a[i
2015-07-11 09:06:52
696
1
原创 14、oracle vm virtualbox & ubuntu-14.04网络及性能配置
研究一个问题我尽量去深入的考究一下,这个虚拟机ubuntu我已经安装了不知多少次,当然不是因为安装错了,而是我在闲暇时下载了多个VM版本,多个ubuntu版本,每次组合安装一下看看各个版本的特性与优缺点,进行对比选择,从中找到了一款我自己喜爱的组合oracle VM4.3.28+ubuntu14.04,各个版本的特性再次不再介绍,通过对比发现这个组合我比较喜欢,至少配置其他工作环境起来我已经得心应
2015-06-10 10:08:51
1270
原创 13、opencv学习笔记1
1、图像处理#include "stdafx.h"#include #include #include using namespace cv;using namespace std; int main(int argc, char** argv) {//const char* imagename = "E:\\1.jpg"; const char* im
2015-06-03 19:46:58
324
原创 12、opencv配置
1、opencv版本添加具体opencv-2.4.9.exe2、添加环境变量添加具体的bin到我的电脑的环境变量。F:\Program Files (x86)\opencv\build\x86\vc10\bin3、DEBUG中配置项配置include路径打开Microsoft Visual Studio 2010,View->Property Manager,在
2015-06-01 19:01:46
825
原创 11、linux下Eclipse+CDT开发环境配置,GTK开发环境配置
1、安装JDK我的ubuntu版本是14.04,使用的是虚拟机。(1)安装 openjdk-6-jdk网上提供这样的安装代码:sudo apt-get install sun-java6-jdk 或 openjdk-6-jdk但是我的系统只有:sudo apt-get install openjdk-6-jdk 可以安装成功。(2)环境变量的配置代码:
2015-05-22 17:07:04
682
原创 10、套接字socket的编程(学习笔记)
1、套接字socket是最通用的网络通信应用程序的开发接口。linux的网络编程就是套接字编程。套接字编程的头文件:#include #include #include 2、套接字地址结构1)套接字地址结构:struct sockaddr{ //不用此结构体编程unsigned short sa_family;
2015-05-13 10:10:17
646
原创 9、数据库初学习,基本安装以及配置、使用方法
1、安装数据库下载wampserver,这是一键傻瓜安装式的,基本配置都是有的。输入127.0.0.1查看一下:2、可以看出数据库已经安装好了,基本的工具也有了。下面我们可以使用数据库了。但这样建立的数据库没有用户名以及密码。下面我们来建立一下:修改方法:http://www.cnblogs.com/hooray/archive/2011/07/23/2114792.htm
2015-05-10 15:52:48
397
原创 8、linux进程间的通信方式
1、进程间通信(1)、管道(pipe):半双工,亲愿关系间通信(父子进程或兄弟进程关系叫亲缘关系)。(2)、有名管道(named pipe):半双工,容许无亲缘关系进程间的通信。(3)、信号量(semophore):计数器,控制多个进程对共享资源的访问,进程间以及同一进程内不同线程间的同步手段。(4)、消息队列(message queue):消息的链表,传递信息量大。
2015-05-06 13:56:28
324
原创 7、oracle vm virtualbox & ubuntu-14.04 应用环境配置方法总结
共享文件夹设置方法总结( oracle vm virtualbox & ubuntu-14.04 共享文件夹设置方法总结)我的系统版本是:ubuntu-14.04-desktop-i386.iso虚拟机是:Oracle VM VirtualBox这个版本我是推进使用的,系统内有自带的gcc安装版本,不然安装gcc就比较麻烦了。下面是共享文件夹设置的过程:1、 安装增强
2015-04-29 16:04:12
1568
原创 6、Linux线程编程设计
1、线程相对于进程的优点a、在多进程情况下,创建一个新的线程花费时间少。b、在系统调度方面,线程的切换速度快。c、在通信机制方面,进程间的数据空间相互独立,通信需要专门的通信方式,需要操作系统的参与。线程共享数据空间,通信不用通过操作系统。d、线程可以提高应用程序的相应速度,耗时线程用完时间片后,让出CUP,其他操作容易得到相应。e、线程可以提高多处理器效率,让多个线程在不同的
2015-04-24 16:16:30
436
原创 5、Linux进程编程设计(知识汇集 清风浅醉)
1、进程概念进程是一个动态实体,是程序的一次执行过程,是操作系统资源分配的基本单位。线程基本上不拥有系统资源,它与同属于一个进程的其他线程共享进程拥有的全部资源。Linux下可以通过ps或pstree查看当前系统中的进程。2、进程标识PID: 进程控制符(PID),英文全称为Process Identifier。也常被称为进程标识符。顾名思义,它是各进程的身份标识,
2015-04-22 14:53:08
534
原创 4、Linux源代码中的关键字解释汇集
1、asmlinkage 函数定义前加宏asmlinkage ,表示这些函数通过堆栈而不是通过寄存器传递参数。 gcc编译器在汇编过程中调用c语言函数时传递参数有两种方法:一种是通过堆栈,另一种是通过寄存器。缺省时采用寄存器,假如你要在你的汇编过程中调用c语言函数,并且想通过堆栈传递参数,你定义的c函数时要在函数前加上宏asmlinkage。定义:在/usr/include
2015-04-22 11:03:49
877
原创 3、键盘操作函数总结
总结一下文件操作等基础问题以及函数/********输入函数*******/1、键盘回车输入每次单个字符用法:char ch;while((ch=getchar()) != '\n')printf(...)...回车屏幕显示2、缓冲输入回车获取所有输入字符用法:char ch;do{ ch = getchar();//buffe
2015-04-19 10:53:20
807
翻译 2、多参数函数设计方法总结
// 多参数函数设计1.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include double add(char *str,...){va_list marker; //定义该参数指向参数的指针double result = 0.0; //marker列表
2015-04-18 17:30:37
637
原创 函数1、Linux下的打印函数printk
从今天开始好好看看Linux的内核代码,听说学习代码最好的老师就是看内核中的代码,学习内核中代码的编写习惯,我打算整理一些学习笔记来督促自己学习,可恨自己太懒,呵呵呵。只打算学习内核代码,所以从源码的start_kernel函数看起,遇见不错的函数就记录两笔。至于详尽的函数代码分析这里不是重点,这里我们只分析函数用法中的亮点。第一个函数:printk 源码:重点分析多参数函数用法。as
2015-01-30 20:00:46
805
ARC_V2_ProgrammersReference.pdf
2020-06-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人