TaterLi 个人博客

由于某些场合需要把模型转换到其他Deep平台,因此需要转换为ONNX来传递,当别人发来ONNX,我们也需要转换成自己的格式,但是后者会丢meta,所以其实不多. Tensorflow -> ONNX: 第一步先转换成SavedModel: model = tf.keras.mo...

发布 0 条评论

为什么分析这个器件呢,因为他涉及的知识点比较多,而且很多人都用过,既支持I2C接口,也支持SPI接口,在Linux中当然推荐用regmap统一管理,这里分析的是由Eva Rachel Retuya大佬写的驱动,实际上这个驱动也很简单但是很经典,所以值得分析. ...

发布 1 条评论

简述版: core-image-minimal - 最小镜像,不能再这个基础上精简,这个镜像仅仅能启动而很多功能还无法使用,因为缺乏应用层软件, core-image-base - 在core-image-minimal基础上添加一些硬件支持的包,这个镜像能使用所有SOC上的功...

发布 0 条评论

RPMsg,VirtIO和remoteproc是Linux上提供的通信方法,OpenAMP是在裸机或者各种RTOS里面提供的,在Vivado不用说就是FreeRTOS了,实际通信机制,可以不经由内核用户空间. 如何写一套OpenAMP程序: 准备固件资源表(Firmware Resourc...

发布 1 条评论

最近阅读一些代码中能看到!!,这真是一个巧妙地设定,他可以把非0转为1,0还是0,为什么要这么做,比如说. i = 5; !i = 0; !!i = 1; 这样就可以完全对应真1假0,而不用说真是非0,因为实际逻辑中真是1这个更合理.

发布 0 条评论

说是最简单,而且能片上训练,可是都好几天了,环境都装不好.首先系统软件上的版本还要和宿主机DDK绑定,宿主机还要和Ubuntu绑定,Ubuntu还要和Python2/GCC 4.8.5绑定,然后还要各种软件不知道在哪里,到现在都还不能开始.白费了钱钱. ...

发布 9 条评论

复位后第一时间在复位向量. 进入后就会跳转到复位. 进入后并没打开LPAE技术,LPAE和x86的36-bit地址异曲同工,可以支持到最大1TB内存,这里没需要,所以直接过去了,接下来读取CPSR并保存到R0,然后让R0和0x1F进行AND运算,提...

发布 3 条评论

最近也不知道发什么神经,就打算试试最新的Vitis,结果还是很失望,如果工程导入了自制IP,那么他可能会出现一些奇怪的错误. 其中因为一个Makefile错误,就会使得如果自制IP引入,就无法编译通过,我能理解原厂的想法,大概是希望我们能做...

发布 1 条评论

USB设备主要四个描述符,分别是设备描述符(Device Descriptors),配置描述符(Configuration Descriptor),报告描述符(Configuration Descriptor),字符描述符(String Descriptors),相信做过USB开发都很熟悉,并且有各种工具生成描述符. ...

发布 0 条评论

网上有很多说直接把syscalls.c挪过来就可以用,实际测试并不能啊,难不成骗我了,不,重点有一句话漏了. // 重点,否则不会直接打印,甚至出错(因为缓冲区满) setvbuf(stdout, NULL, _IONBF, 0); 如果不设置,printf打印几次后,...

发布 0 条评论