Ardb

LS1046调试记录(三)-UBOOT移植概要

放肆的年华 提交于 2020-12-30 10:02:40
对于LS1046A芯片,在开发自主板卡时,采用的开发环境是LSDK或者SDK,之前提过最好是使用LS系列芯片开发时最好是采用最新的LSDK进行。其实,LSDK与SDK在代码架构和移植过程中,基本上完全是一致的,所以本移植过程也同样适用于SDK开发环境。 在LSDK中,rcw以及u-boot都位于firmware(固件)目录下: 开发自主板卡时,一般以开发板的代码和环境为参照,在此之上进行更改。以LS1046A为例,有LS1046ARDB和LS1046AQDS作为参考,根据自己板卡与哪块更为相似进行修改即可,这个与vxworks的bsp开发很相似。 板卡代码在如下目录: 同时,比较重要的头文件定义在如下目录: 这个头文件很重要,是主要的修改对象。 熟悉完修改目录后,就可以进行移植了,步骤大体如下: 1. DDR配置修改; 主要文件是修改ddr.c和ddr.h,如果自主板卡是DIMM的,使用SPD配置DDR就可以不用修改,因为所有参数都是在内存的EEPROM里面读出来的。但是,如果是DDR颗粒就需要查看LS1046A DDR控制器以及DDR颗粒datasheet来进行配置,这个时候需要修改ddr.c的代码。可以参照p1010的过程进行。 2. ETH配置修改: 主要修改eth.c文件,和头文件,修改内容为接口裁剪、PHY地址修改等。 3. 系统配置 主要修改如系统时钟、ddr时钟

redis3.2新功能--GEO地理位置命令介绍

别等时光非礼了梦想. 提交于 2019-12-12 19:09:22
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、概述 redis3.2发布rc版本已经有一段时间了,估计RedisConf 2016左右,3.2版本就能release了。3.2版本中增加的最大功能就是对GEO(地理位置)的支持。说起redis的GEO特性,最大的贡献还是咱们中国人。redis作者在对3.2引进新特性的博客中介绍了为什么支持GEO。GEO hashing的api是在Ardb实现的,Ardb是github用户yinqiwen实现的基于redis协议实现的nosql系统,Ardb支持除了redis、还有LevelDB、RocksDB 、LMDB等kv引擎。其中Ardb实现了GEO hashing功能。从Ardb作者的用户名和标识的位置在深圳可以看出Ardb作者应该是咱中国人。Ardb是用c++写的。redis另一个开发者Matt Stancliff从Ardb提取GEO库,用C语言改写,整合进redis的一个自己的分支,并被redis作者接受,合并进了3.2版本。GEO目前提供以下6个命令。 geoadd:增加某个地理位置的坐标。 geopos:获取某个地理位置的坐标。 geodist:获取两个地理位置的距离。 georadius:根据给定地理位置坐标获取指定范围内的地理位置集合。 georadiusbymember