Giter Site home page Giter Site logo

prm-sw's Introduction

PRM Software

.
├── apps                 # platform-independent applications
│   ├── axi-loader       # loader to loader image and reset for the RISC-V subsystem
│   ├── dbg              # simple external debugger for RISC-V subsystem
│   ├── pardctl          # control plane access tools
│   ├── rbb-server       # unused
│   └── stab             # control plane statistic table dumper
├── common               # platform-independent codes shared by `apps`
├── Makefile.app
├── Makefile.check
├── Makefile.compile
├── Makefile.lib
├── misc
│   ├── dtb              # DTB for RISC-V subsystem
│   ├── linux-config     # Linux config for PS of zynq and zynqmp
│   └── scripts
├── platform             # platform-dependent code
│   ├── platform-emu
│   └── platform-fpga
└── README.md            # this file

jtag硬件以上层次的软件都放在本目录下, 包括jtag驱动, DTM驱动, 控制平面访问等. 目录组织类似AM, 分3部分:

  • platform/ - 包括平台相关的代码, 如jtag访问方式, 平台初始化等工作. 目前平台包括emufpga, 其中emu用于仿真, fpga用于上板
  • apps/ - 平台无关的应用
  • common/ - 平台无关但可以被apps共享的代码

注意:

  • 将本目录拷贝到ARM核上编译, 即可得到ARM上运行的可执行文件
  • 关于DTM, jtag等模块的关系, 请查阅riscv debug specification

This directory contains functions above the jtag hardware, including jtag driver, DTM driver, control plane accessing.

  • platform/ - platform-dependent code, including jtag accessing, platform initialization. Currently, there are two platforms. emu is used for running over emulation, and fpga is used for running over FPGA
  • apps/ - platform-independent applications
  • common/ - platform-independent codes shared by apps

NOTE:

  • Copying this directory to the ARM system and compile will get the ARM executables
  • For details about the relationship between DTM and jtag, please refer to riscv debug specification

Compile

apps/xxx目录下运行make, 默认将程序编译到emu平台, 编译结果位于apps/xxx/build/xxx-emu. 可以通过make PLATFORM=fpga将程序编译到fpga-zynqmp平台. 若使用zynq的FPGA, 需要手动指定BOARD参数: make PLATFORM=fpga BOARD=zynq.

Running make under apps/[app name]/ will compile the application to emu platform by default. Executable will be generated as apps/[app name]/build/[app name]-emu. To compile the application to zynqmp FPGA platform, run make PLATFORM=fpga under the application directory. If you use a zynq FPGA, a BOARD argument should be specified: make PLATFORM=fpga BOARD=zynq.

prm-sw's People

Contributors

maoyuchaxue avatar sashimi-yzh avatar

Watchers

 avatar  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.