SD-Host控制器的datasheet更多的是给嵌入式软件工作人员使用,datasheet中主要包含一些寄存器以及读写擦除流程

寄存器主要有:

  • 控制寄存器
  • 状态寄存器
  • 配置寄存器

    软件和硬件进行交互,就是通过配置寄存器和中断进行交互

功能列表

控制器架构图

  • datasheet中描述的主要是ahb_slave_if模块

硬件集成环境

寄存器需求分析

寄存器:控制寄存器、状态寄存器

clk_gen 模块

1、需要分频,所以需要设置分频系数 - clk_div

2、软件可控的时钟 - clk_enable

3、test mode下的时钟 - Testmode

reponse receive模块

1、接收返回的信号 - respone0-3

2、respone_crc_error

cmd_fsm

1、cpu配置的trigger信号 - cmd_fsm_ready

2、响应类型,长响应或者短响应 - respone type

3、reponse_timeout

4、data_present - 是否有数据接收或者发送

cmd_send

1、cmd_index

2、cmd_arguement

3、high_speed(低俗模式或者高速模式)

data_fsm

1、data bus width(1bit/4bit)

2、high_speed(低俗模式或者高速模式)

3、block_length

4、read_or_write(direction)

5、read_data_timeout(status)

6、data_send_crc_error

7、data_rcv_crc_error

8、data_fsm_ready

9、read_data_timeout_cnt(counter)

data fifo

1、fifo_empty

2、fifo_full

3、block_length

dma

1、dma_enable(trigger)

2、dma_trans_len

3、dma_trans_dir

4、dma_trans_addr

寄存器详细描述

  • 寄存器域段推荐按照4bit/8bit对齐的方式进行设置

  • 硬件停时钟的使能,不是可写的

  • 描述大小的时候,需要写清楚1bit表示的单位是什么
  • datasheet中的寄存器注意事项:

    1、长度相关的参数需要写明其单位,是byte/bit/word

    2、控制参数不同模式对应的编码信息

    3、使能信号的有效电平

    4、对于config寄存器,软件侧读写属性定义为可读可写

    5、对于status寄存器,软件侧一般为只读的,对于某些需要清0的寄存器,软件侧为可写的







  • 硬件置位,软件清0,需要有一个clear寄存器



datasheet文档





  • 地址信息:都是以byte为单位的

寄存器读写属性

1、软件侧读写属性

是否通过能够通过ahb总线进行读写

2、硬件侧读写属性

寄存器配置完成之后,可以发出信号给到硬件,硬件操作之后可以将信息写到寄存器中

SD Host控制器的datasheet的更多相关文章

  1. 8. [mmc subsystem] host(第二章)——sdhci

    一.sdhci core说明 1.sdhci说明 具体参考<host(第一章)--概述> SDHC:Secure Digital(SD) Host Controller,是指一套sd ho ...

  2. 7. [mmc subsystem] host(第一章)——概述

    一.host简单说明 host,也可以理解为host controller,是指mmc总线上的主机端,mmc总线的控制器,每个host controller对应一条mmc总线. host contro ...

  3. OpenRisc-30-SD card controller模块分析与验证

    引言 ORPSoC的硬件平台是包含SD card controller控制器的,但是对应的linux里面却没有对应的linux的驱动程序,这使ORPSoC的SD card的使用收到了很大的限制.没有驱 ...

  4. sd 卡驱动--基于高通平台

    点击打开链接 内容来自以下博客: http://blog.csdn.net/qianjin0703/article/details/5918041 Linux设备驱动子系统第二弹 - SD卡 (有介绍 ...

  5. Linux SD卡驱动开发(四) —— SD 控制器之真正的硬件操作

    前面对SD卡控制器有了一个主要的介绍.事实上SD控制器层更过的意义是为core层提供一种操作SD卡硬件的一种方法.当然不同的控制器对硬件控制的方法不尽同样,可是他们终于都能像core层提交一个统一的封 ...

  6. linux驱动基础系列--Linux mmc sd sdio驱动分析

    前言 主要是想对Linux mmc子系统(包含mmc sd sdio)驱动框架有一个整体的把控,因此会忽略某些细节,同时里面涉及到的一些驱动基础,比如平台驱动.块设备驱动.设备模型等也不进行详细说明原 ...

  7. 基于tiny4412的Linux内核移植 -- SD卡驱动移植(五)

    作者信息 作者: 彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台简介 开发板:tiny4412ADK + S700 + 4GB Flash 要移植的内核版本 ...

  8. STM32之SD卡

    目录 一.SD卡概述 1.定义 2.容量等级 3.SD卡框图 4.SD卡与TF卡的区别 二. SD卡内部结构 1. SD卡内部结构简图 2. 存储阵列结构图 3.Buffer 4.“存储阵列Block ...

  9. 转:USB主机控制器(Host Controller)--深入理解

    1. 主机控制器(Host Controller) • UHCI: Universal Host Controller Interface (通用主机控制接口, USB1.0/1.1)      • ...

  10. SD card技术了解并WINCE下SDHC驱动开发(updated)

    Suumary: 简单介绍了一下SD卡的历史和发展,同时结合MX31 ADS上的WINCE 下SDHC驱动更深入的了解该硬件的一些行为特点. 了解SD card SD是Secure Digital C ...

随机推荐

  1. 前端 JS 安全对抗原理与实践

    作者:vivo 互联网安全团队- Luo Bingsong 前端代码都是公开的,为了提高代码的破解成本.保证JS代码里的一些重要逻辑不被居心叵测的人利用,需要使用一些加密和混淆的防护手段. 一.概念解 ...

  2. C#如何对List中的Object进行排序

    首先定义一个List类,这个类里面包含了Name和Total两个属性变量,下面就是针对这两个变量进行排序. public class Player { public string Name { get ...

  3. IDEA创建MyBatis项目--实现简单的查操作

    IDEA创建MyBatis项目--实现简单的查操作 1.创建一个maven工程,不使用模板 2.通过maven加载Mybatis依赖包 在pom文件中导入maven坐标 <dependencie ...

  4. ORA-28579 在从外部过程代理程序回调时,发生网络错误,ORA-06512 在"SDE.ST_GEOMETRY_SHAPELIB_PKG"

    如图所示,在执行sde.st_transform方法时报错. 环境是arcgis10.8  oracle是12C,版本号是v12.1.0.2.0 但是执行ST_GEOMETRY方法是可以的,说明配置没 ...

  5. P7112 【模板】行列式求值

    学<高等代数>第二章的时候过来搜了搜模板,结果真搜到了.于是水一篇题解. 本文部分内容来自<高等代数>. 行列式定义 对于一个 \(n\) 阶行列式 \[A_{n \times ...

  6. [Python急救站]定时关机程序

    收到朋友的请求,让我帮他做一个电脑关机程序,其实非常简单.代码如下: import tkinter as tk # 导入tkinter模块 from tkinter import ttk # 导入tt ...

  7. 分门别类输入输出,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本数据类型和输入输出EP03

    前文再续,Go lang和Python一样,基础数据类型有着很多分类,分门别类,一应俱全.它们对应着不同的使用场景,分别是:整形.浮点.字符.字符串.布尔等等.常用的基本数据类型经常会参与日常业务逻辑 ...

  8. MySQL进阶篇:详解存储引擎介绍和基本使用

    1. MySQL进阶篇:第一章__一.一_存储引擎介绍和基本使用 1.1 MySQL体系结构 1). 连接层 最上层是一些客户端和链接服务,包含本地sock 通信和大多数基于客户端/服务端工具实现的类 ...

  9. 一图看懂CodeArts Inspector 三大特性,带你玩转漏洞管理服务

    ​​​​本文分享自华为云开发者联盟公众号<一图看懂华为云CodeArts Inspector三大特性,带你玩转漏洞管理服务>. 华为云漏洞管理服务CodeArts Inspector是面向 ...

  10. 能够让机器狗学会灭火, ModelArts3.0让AI离我们又近一步

    摘要:训练.标注成本节省90%!华为云自动化AI开发平台ModelArts 3.0发布,从训练数据到模型落地一站式打通. 今年的华为,着实遭遇了不小的困难. 尤其是供应链,包括芯片方面的打击,让华为轮 ...