Git Product home page Git Product logo

fpga-sdcard's Introduction

test docs

FPGA SDcard

全面的,兼容性强的,有关 SD卡 的各种 FPGA实现

SDv1.1 card SDv2 card SDHCv2 card FPGA模拟SDHCv2 card
FPGA读取扇区 ✔️ ✔️ ✔️ ✔️
FPGA读取根目录中的文件(FAT16) ✔️ ✔️ NaN NaN
FPGA读取根目录中的文件(FAT32) ✔️ ✔️ ✔️ ✔️
读卡器读取 ✔️
  • 该库完全使用 SD总线 实现,而不是 SPI 。笔者也有 SPI版本,但读取速度不如该库的 SD总线 ,因此推荐使用该库。
  • 提供FPGA读取SD卡功能:FPGA作为 SD-host , 指定文件名 读取文件内容 ;或指定扇区号 读取扇区内容
  • 提供FPGA模拟SD卡功能:FPGA作为 SD-device ,能实现 FPGA模拟SD卡。目前已经成功使用 FPGA 模拟了一个 FAT32格式SDHCv2.0只读卡,并能被读卡器识别。
  • 兼容性强 : 自动适配 SD协议版本 ,自动适配 FAT16/FAT32文件系统
  • 纯 RTL 实现 :完全使用 SystemVerilog ,方便移植

目录组织

  • ./RTL : 包含 SD卡相关的核心代码,这些模块留出明确的输入输出接口,方便Verilog开发者调用它们进行二次开发。
  • ./example : 几个示例,展示了 ./RTL 中的模块如何调用。
  • ./UART : UART发送器代码,虽然与SD卡本身无关,但 example 中的很多示例都用到了它。
  • ./images : 一些图片

核心代码

RTL目录 包含 SD卡的核心代码 , 它们可以当作 IP核 被调用,实现二次开发。

虽然核心代码文件很多,但并不是每种应用都要用到全部的文件,而是根据实际情况选择合适的顶层文件去调用。详见 RTL目录 里的 README

示例

仿真波形 图:仿真波形

应用场景

  • 在没有 MCU 或 软核 辅助的 FPGA 系统中,实现一些离线配置,例如任意波发生器的波形配置。
  • 为 FPGA 中的软核配置运行程序或操作系统。
  • FPGA 模拟 SD卡,为一些需要用 SD卡初始化的设备提供另一种初始化方式。

fpga-sdcard's People

Contributors

wangxuan95 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.