当前位置: 首页 > news >正文

微同步网站登录wordpress显示403

微同步网站,登录wordpress显示403,软件开发怎么自学,国外购物网站系统目录 1. 简介 2. 示例 2.1 示例功能介绍 2.2 示例代码 2.3 顶层函数解释 2.4 综合报告#xff08;HW Interfaces#xff09; 2.5 关于TKEEP和TSTRB 2.6 综合报告#xff08;SW I/O Information#xff09; 3. 总结 1. 简介 本文通过“Examples/Interface…目录 1. 简介 2. 示例 2.1 示例功能介绍 2.2 示例代码 2.3 顶层函数解释 2.4 综合报告HW Interfaces 2.5 关于TKEEP和TSTRB 2.6 综合报告SW I/O Information 3. 总结 1. 简介 本文通过“Examples/Interface/Streaming/axi_stream_to_master/”示例展示了如何利用 Vitis HLS 工具将输入的 AXI Stream 格式的数据流转换为并行存储数据并通过 AXI Master 接口写入到存储器中。 AXI Stream 接口是一种轻量级的、无协议的、点对点的数据传输接口常用于在 FPGA 内部或 FPGA 与外部设备之间传输大量数据。它包括一个数据通道和一个控制信号通过这两个通道传输数据和标记数据包结束。AXI Master 接口是一种高级别的存储器接口用于 FPGA 设备与外部存储器之间的数据传输。它包括数据通道、地址通道、控制信号等可以支持高性能的数据读写操作。 2. 示例 2.1 示例功能介绍 本示例包含三个函数 getinstream 函数 从输入的 AXI Stream 数据流中读取数据并将其转换为 data 结构后发送到输出流中。在达到最大计数或读取到最后一个数据包时将计数值发送到输出计数流中。这个函数主要利用了 AXI Stream 接口进行数据的传输和标记数据包结束。 streamtoparallelwithburst 函数 从输入的 AXI Stream 数据流和计数流中读取数据并将数据写入到输出的 AXI Master 接口中。这个函数主要利用了 AXI Master 接口进行数据的存储支持数据的突发传输。 example 函数 顶层函数将这两个操作结合起来首先将输入流转换为数据流和计数流然后将数据流传递给 streamtoparallelwithburst 函数进行数据存储操作。最终实现了从 AXI Stream 数据流到 AXI Master 存储器接口的数据处理流程。 2.2 示例代码 #include ap_axi_sdata.h #include ap_int.h #include hls_stream.htypedef ap_axiu64, 0, 0, 0 trans_pkt;// Expects max bandwidth at 64 beats burst (for 64-bit data) static constexpr int MAX_BURST_LENGTH 64; static constexpr int BUFFER_FACTOR 64;// Buffer sizes static constexpr int DATA_DEPTH MAX_BURST_LENGTH * BUFFER_FACTOR; static constexpr int COUNT_DEPTH BUFFER_FACTOR;struct data {ap_int64 data_filed;ap_int1 last; };/// Reads from in_stream and in_counts, Write to out_memory void streamtoparallelwithburst(hls::streamdata in_stream,hls::streamint in_counts,ap_uint64* out_memory) {data in_val;do {int count in_counts.read();for (int i 0; i count; i) { #pragma HLS PIPELINEin_val in_stream.read();out_memory[i] in_val.data_filed;}out_memory count;} while (!in_val.last); }void getinstream(hls::streamtrans_pkt in_stream,hls::streamdata out_stream, hls::streamint out_counts) {int count 0;trans_pkt in_val;do { #pragma HLS PIPELINEin_val in_stream.read();data out_val {in_val.data, in_val.last};out_stream.write(out_val);count;if (count MAX_BURST_LENGTH || in_val.last) {out_counts.write(count);count 0;}} while (!in_val.last); }void example(hls::streamtrans_pkt inStreamTop, ap_uint64 outTop[1024]) { #pragma HLS INTERFACE axis register_mode both register port inStreamTop #pragma HLS INTERFACE m_axi max_write_burst_length 256 latency 10 depth 1024 bundle gmem0 port outTop #pragma HLS INTERFACE s_axilite port outTop bundle control #pragma HLS INTERFACE s_axilite port return bundle control#pragma HLS DATAFLOWhls::streamdata, DATA_DEPTH buf;hls::streamint, COUNT_DEPTH count;getinstream(inStreamTop, buf, count);streamtoparallelwithburst(buf, count, outTop); } 2.3 顶层函数解释 顶层函数 example 共有两个参数 inStreamTop这是一个输入参数类型为 hls::streamtrans_pkt表示一个 AXI Stream 接口的数据流。该参数用于传递输入的数据流其中 trans_pkt 是一个结构体类型表示一个 AXI Stream 格式的数据包包含64位的数据字段和一个标记最后一个数据包的信号。outTop这是一个输出参数类型为 ap_uint64 outTop[1024]表示一个 AXI Master 接口的存储器。该参数用于指定存储数据的地址数据将被写入到这个地址指定的存储器中。这里使用了 ap_uint64 类型的数组长度为1024表示存储器的容量为1024个64位的数据。 编译器指令只介绍其中第一个其余的在之前的文章已有分析。 #pragma HLS INTERFACE axis register_mode both register port inStreamTop axis这表示我们正在定义一个AXI Stream接口。register_mode both这指定了数据流的寄存器模式。在这里both表示数据流的输入和输出都使用寄存器。register表示数据端口将使用寄存器进行数据缓存。port inStreamTop表示将指定这个接口指令应用于名为 inStreamTop 的输入端口。这个端口将被识别为 AXI Stream 接口从而在 HLS 综合过程中正确处理数据流。 2.4 综合报告HW Interfaces HW Interfaces* M_AXI ------------------------------------------------------------------------------------------------------------------------------------ | Interface | Data Width | Address Width | Latency | Offset | Register | Max Widen | Max Read | Max Write | Num Read | Num Write | | | (SW-HW) | | | | | Bitwidth | Burst Length | Burst Length | Outstanding | Outstanding | ------------------------------------------------------------------------------------------------------------------------------------ | m_axi_gmem0 | 64 - 64 | 64 | 10 | slave | 0 | 0 | 16 | 256 | 16 | 16 | ------------------------------------------------------------------------------------------------------------------------------------* S_AXILITE Interfaces ------------------------------------------------------------ | Interface | Data Width | Address Width | Offset | Register | ------------------------------------------------------------ | s_axi_control | 32 | 5 | 16 | 0 | ------------------------------------------------------------* S_AXILITE Registers -------------------------------------------------------------------------------------------------------------------------------------------------------- | Interface | Register | Offset | Width | Access | Description | Bit Fields | -------------------------------------------------------------------------------------------------------------------------------------------------------- | s_axi_control | CTRL | 0x00 | 32 | RW | Control signals | 0AP_START 1AP_DONE 2AP_IDLE 3AP_READY 7AUTO_RESTART 9INTERRUPT | | s_axi_control | GIER | 0x04 | 32 | RW | Global Interrupt Enable Register | 0Enable | | s_axi_control | IP_IER | 0x08 | 32 | RW | IP Interrupt Enable Register | 0CHAN0_INT_EN 1CHAN1_INT_EN | | s_axi_control | IP_ISR | 0x0c | 32 | RW | IP Interrupt Status Register | 0CHAN0_INT_ST 1CHAN1_INT_ST | | s_axi_control | outTop_1 | 0x10 | 32 | W | Data signal of outTop | | | s_axi_control | outTop_2 | 0x14 | 32 | W | Data signal of outTop | | --------------------------------------------------------------------------------------------------------------------------------------------------------* AXIS ------------------------------------------------------------------------ | Interface | Register Mode | TDATA | TKEEP | TLAST | TREADY | TSTRB | TVALID | ------------------------------------------------------------------------ | inStreamTop | both | 64 | 8 | 1 | 1 | 8 | 1 | ------------------------------------------------------------------------* TOP LEVEL CONTROL ---------------------------------- | Interface | Type | Ports | ---------------------------------- | ap_clk | clock | ap_clk | | ap_rst_n | reset | ap_rst_n | | interrupt | interrupt | interrupt | | ap_ctrl | ap_ctrl_hs | | ---------------------------------- 通过 AXIS 报告项可以清楚的看到 axi stream 接口的构成 * AXIS ------------------------------------------------------------------------ | Interface | Register Mode | TDATA | TKEEP | TLAST | TREADY | TSTRB | TVALID | ------------------------------------------------------------------------ | inStreamTop | both | 64 | 8 | 1 | 1 | 8 | 1 | ------------------------------------------------------------------------ TDATA: 这是数据信号用于传输实际的数据。在报告中TDATA的宽度是64位。TKEEP: 这是字节使能信号每个位对应TDATA中的一个字节。如果TKEEP的某位是1那么对应的TDATA字节是有效的如果是0则该字节无效。在报告中TKEEP的宽度是8位可以独立控制TDATA中的每个字节。TLAST: 这是一个标志信号用于指示一次传输的最后一个数据包。当TLAST为1时表示当前的TDATA是当前传输的最后一个数据包。TREADY: 这是就绪信号由接收方控制。当TREADY为1时表示接收方准备好接收数据当TREADY为0时表示接收方未准备好接收数据。TSTRB: 这是字节选通信号与TKEEP类似用于指示有效的数据字节。在报告中TSTRB的宽度是8位。TVALID: 这是有效信号由发送方控制。当TVALID为1时表示发送方正在发送有效的数据当TVALID为0时表示当前没有数据被发送。 2.5 关于TKEEP和TSTRB TKEEP和TSTRB在AXI Stream接口中都是字节使能信号但它们的用途略有不同。 TKEEP是用来指示哪些字节是有效的。如果TKEEP的某一位是1那么对应的TDATA字节是有效的如果是0则该字节无效。这个信号通常用于数据包的开始和结束以及中间的所有字节如果TKEEP全部为1则表示所有字节都是有效的。TSTRB也是一个字节使能信号但它更多地用于指示数据的位置或时序。当TSTRB的某一位是1时表示对应的TDATA字节在当前时刻是有效的。TSTRB可以用来传输空字节即使TKEEP为高TSTRB也可以为低这意味着需要发送一个空字节。 在大多数情况下只使用TKEEP信号因为它可以满足大部分接口的需求。然而在某些特定的应用中可能会同时使用TKEEP和TSTRB来提供更精细的控制。 2.6 综合报告SW I/O Information SW I/O Information* Top Function Arguments --------------------------------------------------------------------- | Argument | Direction | Datatype | --------------------------------------------------------------------- | inStreamTop | in | streamhls::axisap_uint64, 0, 0, 0, 0 | | outTop | out | ap_uint64* | ---------------------------------------------------------------------* SW-to-HW Mapping ------------------------------------------------------------------------------------- | Argument | HW Interface | HW Type | HW Usage | HW Info | ------------------------------------------------------------------------------------- | inStreamTop | inStreamTop | interface | | | | outTop | m_axi_gmem0 | interface | | | | outTop | s_axi_control | register | offset | nameoutTop_1 offset0x10 range32 | | outTop | s_axi_control | register | offset | nameoutTop_2 offset0x14 range32 | ------------------------------------------------------------------------------------- 从 Top Function Arguments 可轻松分析参数类型和方向。 3. 总结 本文详细介绍了如何利用 Vitis HLS 工具将 AXI Stream 格式的数据流转换为并行存储数据并通过 AXI Master 接口写入到存储器中。通过示例代码和编译器指令的解释读者可以了解到 AXI Stream 接口和 AXI Master 接口的特点以及在 FPGA 设计中的应用。同时本文还分析了示例中各个函数的功能和参数以及综合报告中的重要信息。
http://www.w-s-a.com/news/996147/

相关文章:

  • 福田欧曼服务站网站前台设计
  • 网站做系统叫什么软件吗注册域名需要实名认证吗
  • jsp网站开发教学视频ui设计风格
  • 注册网站建设开发怎么自己做导航网站
  • 设计做网站品牌咖啡主题网页界面设计
  • 个人网站制作总体设计宿迁房价2023年最新房价
  • 服装网站建设进度及实施过程马鞍山网站设计制作
  • 郑州网站优化顾问济宁网站制作
  • 网站开发简单吗网站引导页分为三个板块设计风格
  • 湖南做网站 在线磐石网络百度一下百度搜索
  • 现在建网站多少钱推广营销费
  • 联想企业网站建设的思路西安网站建设阳建
  • 网站内容 内链网站建设电话销售工作总结
  • 系统网站开发知名的摄影网站有哪些
  • 网站拍照的幕布扬中网站建设价位
  • 网站ie兼容性差西安小程序开发的公司
  • 上海网站建设培训app网站开发成本
  • 个人网站icp外贸网站开发 河南
  • 遵义建设网站无锡市规划建设局网站
  • 海外留学网站建设方案门户网站的发布特点
  • 网站建设不赚钱net112企业建站系统
  • 网站建设团队管理模板贵州省住房和城乡建设部网站
  • 曲沃网站建设网上学编程的有哪些比较好的网站
  • 厦门网站建设慕枫学做网站需要多久
  • 爱奇艺做任务领vip网站设计广告图片
  • 中科汇联网站建设手册上海公司名称注册查询网
  • 网站建设电子商务课总结和体会关于做网站书籍
  • 仪征网站建设公司哪家好简单网页制作素材图片
  • 甘肃第九建设集团公司网站潍坊个人做网站
  • 如何做后台网站的教程网站建设 关于我们