完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请教有过linux系统SD卡读写经验的前辈。
我的项目是对FPGA上的SD卡部分做测试,在测试过程中发现在对SD卡所有领域进行读写操作时 1、bus width 选择1-bit的速度4-bit是差不多的,这与我预想的不同,想知道问题出在哪里?(理论上4bit 速度应该是1-bit的4倍,至少也要比1bit快很多) SD卡设置:SD总线模式 ,4-bit,single-block,非DMA 软件用的是:DS-5 debug 测得写速度:17KByte/sec 读速度比写速度快很多,这里就忽略了。 PS: 用示波器检测到SD卡 4bit 时,4位数据线均有波形,说明确实是4位都在传数据了。 2、起初猜测是不是时钟频率的问题 SD卡 CLK频率开始时设置为50Mhz,后来改为12.5Mhz 发现速度还是没变(用示波器检测到CLK频率确实改变了) 请问这是为什么?是程序哪里设置出了问题吗? 3、还尝试过更换SD卡,最开始用的是SDHC卡,后来了个板子用的microSDHC卡 卡速度也是class4,class10都有,然而速度都并没有变。。 PPS:本菜鸟在SD卡协议中看到一个地觉得有点关系,协议中提到: {Some cards may require long and unpredictable times to write a block of data. After receiving a block of data and completing the CRC check, the card will begin writing and hold the DAT0 line low if its write buffer is full and unable to accept new data from a new WRITE_BLOCK command. (有些卡可能会需要很长且不可预料的时间去写一个block的数据。在接收了一个block的数据并完成 CRC check 后,若 write buffer 已满,SD卡会持续写操作并使DAT0保持低电平,不能接收新的WRITE_BLOCK 命令。)} 这个是不是跟写速度很慢有关系呢?buffer这个问题怎么解决呢?清除或者更改buffer size? PPPS:已经在资料中了解到multiple block写入会比single要快,DMA模式比非DMA要快。。 我的问题主要是为什么1bit 4bit 写速度是一样的,不是单纯的想提高写速度~ 坐等解答!本菜鸟在网上能搜的不能搜到的地方都搜过了。。看过 有人的问题跟我的一毛一样。。然而并没人有回答。。 |
|
相关推荐
4个回答
|
|
今天将class 10 和class 4 的速度重新测了一下,发现class 10 比class 4 稍微快了一些。。
速度(包括读写):class 4 183KByte/sec class 10 240KByte/sec 好吧 我只是顶下帖子。。 |
|
|
|
我在测速度的时候有两种方法,一种是online 用DS-5 debug 另一种是把程序写进SD卡里,在linux终端测试
发现终端的速度比online快好多。。2楼就是用终端的速度。 下午的时候测了一下只读和只写,发现速度是一样的,都是240KB/sec,跟读写速度一样快!!我要疯了。。 |
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
838 浏览 0 评论
矩阵4x4个按键,如何把识别结果按编号01-16(十进制)显示在两个七段数码管上?
1040 浏览 0 评论
871 浏览 0 评论
1906 浏览 0 评论
482 浏览 0 评论
1290 浏览 28 评论
5472 浏览 113 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 15:21 , Processed in 0.535920 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号