首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏FPGA开源工作室

    Vivado DDS IP核仿真

    1 DDS IP概述 直接数字合成器(DDS)或数控振荡器(NCO)是许多数字通信系统中的重要部件。 •3位至26位带符号输出采样精度 IP 文档连接:PG141 2 DDS IP 架构 3 DDS IP 配置 (1)Component Name 可以修改IP核名字 (2)Configuration options 配置选项:这里我们选择phase generator and sin cos LUT (3)system clock(系统时钟) 100MHz(范围0.01—1000MHZ);通过奈奎斯特定理可知 programmability None(无);选择无相位偏移; Fixed(固定模式);固定相位偏移; Programmable(可编程模式);可以调整波形相位; Streaming(流水模式); (3DDS_top: module dds_top( input wire aclk, input wire reset_n, output valid, output

    1.2K10编辑于 2024-02-22
  • 来自专栏C/C++进阶专栏

    自动驾驶技术栈——DDS分布式通信协议

    ,最近由于自动驾驶技术的兴起,在车载软件的通信中间件开发中也使用了DDSDDS协议大致流程如下图所示: *DDS采用的通信方式是多对多的单向数据交互,通信模型为分布式结构,没有中心节点,同一个数据空间任何两个节点之间都能直接通信。 (3)广播模型:通信双方不用单独连接,而是借助于一种总线——广播信道。只需借助广播信道发送和接收信号。 RTPS协议还可以允许不同的DDS模块之间进行交互。 3.借助开源的DDS编译工具,编译用于生成C++语言或Java语言的IDL文件,获得发布者/订阅者对应的头文件和源代码。 4.将发布者/订阅者的模块代码进行改造并嵌入到项目工程文件中进行通信。

    22.3K12编辑于 2023-02-23
  • 来自专栏Lauren的FPGA

    DDS Rasterized模式怎么用?

    直接数字频率合成器(DDS: Direct Digital Synthesizers)又称数字压控振荡器(NCO: Numerically Controlled Oscillator)在数字通信系统中被广泛使用 AMD提供了专门的DDS IP,用户只需根据设计需求进行定制。 这个IP有两种工作模式:Rasterized模式和Standard模式,如下图所示,可通过Mode Of Operation进行设定。 我们先了解一下DDS的工作原理,如下图所示,DDS由两部分构成:相位累加器和相位波形转换器。前者根据给定的初始相位和相位步进值输出目标相位值,后者又称波形存储器,根据输入的相位值输出对应的幅度值。 实际上,根据DDS的工作原理,除了可以输出正弦信号之外,还可以输出其他波形的信号。无需其他额外逻辑,在上述参数配置的情况下,相位累加器的输出将呈现锯齿波,而相位累加器的最高位将呈现方波,如下图所示。 Copyright @ FPGA技术驿站

    64721编辑于 2024-02-06
  • 来自专栏机器人课程与技术

    ROS2+DDS+RTPS

    DDS 使用 QoS 来定义 DDS 实体的行为特征。 QoS 由单独的 QoS 策略(源自 QoSPolicy 的类型的对象)组成。这些在政策中有所描述。 DDS 域由域 ID 标识。 DomainParticipant 定义域 ID 以指定它所属的 DDS 域。具有不同 ID 的两个 DomainParticipants 不知道彼此在网络中的存在。 此外,Fast DDS 还支持 TCP 和共享内存 (SHM) 传输。 它旨在支持单播和多播通信。 在继承自 DDS 的 RTPS 顶部,可以找到域,它定义了一个单独的通信平面。 但是,Fast DDS 支持多种配置,允许您更改 RTPSWriters/RTPSReaders 的行为。 您可以继续阅读 RTPS 层部分,了解更多关于快速 DDS 中 RTPS 协议的实现。 ----

    1.4K20编辑于 2022-06-27
  • 来自专栏FPGA开源工作室

    基于LUT的DDS的设计

    基于LUT的DDS的设计 DDS(Direct Digital Synthesis)直接数字频率合成技术由USA J.Tierncy首先提出。 它是一种以数字信号处理理论为基础,从相位概念出发直接合成所需波形的一种新的全数字技术的频率合成方法。DDS主要出现在数字混频系统中。 1 基于LUT的DDS理论 一个典型的基于LUT的DDS系统由相位累加器和波形存储器两部分构成,如图1所示。图中相位累加器的位宽为nbit,步进值为μ,LUT的深度N为2n,宽度为Lbit。 图3 matlab 1024点1个周期的正玄波 3 FPGA仿真 整个仿真结构如图1所示,由相位累加控制器和sin波形存储器组成。 `define NULL 0 3. module tb_dds(); 4. 5. parameter KHZ1 =44; 6. parameter KHZ2 =22; 7. parameter

    1.2K10发布于 2019-10-29
  • 来自专栏机器人课程与技术

    ROS2之DDS问题汇集

    333 见过类似的问题,不是每个网络都有,但主要是无线网状网络有许多无线 AP 相互通信,其中 ROS2/DDS 流量导致它停止运行。 444 快速添加:从技术上讲,export ROS_LOCALHOST_ONLY=1不执行原始帖子的 XML 中指定的所有配置步骤。

    1.3K20编辑于 2022-08-10
  • 来自专栏OpenFPGA

    Xilinx DDS Compiler IP 使用教程

    从设备和主设备的逻辑; 3 - 一个集成逻辑分析仪 (ILA) IP,用于查看 DDS 的输出波形。 在加ILA的时候,一共加了4个探头监测DDS从接口的输入相位增量值和DDS主接口的输出数据和相位值。将芯片的深度设置为 65536。 实例化 ILA 和 DDS IP 后,编写了简单状态机来创建 AXI Stream 接口,将相位增量值输入到 DDS,然后等待 1 us,然后将 1MHz 步长添加到相位增量值并将其输入到DDS3 - 设置要在目标 IP 的从接口上输入的数据值(DDS 的相位增量值)。 4 - 检查来自目标 IP 从接口的 Tready 信号,验证它已准备好接收下一个数据值。 第三张图是输入到 DDS 的相位增量值。 底部的十六进制值只是状态机状态,用于演示每个状态如何与 DDS 控制关联。

    2.6K31编辑于 2023-02-14
  • 来自专栏开源FPGA

    基于Vivado调用ROM IP core设计DDS

    DDS直接数字式频率合成器(Direct Digital Synthesizer)   下面是使用MATLAB生成正弦波、三角波、方波的代码,直接使用即可。 1 t=0:2*pi/2^12:2*pi 2 y=0.5*sin(t)+0.5; 3 r=ceil(y*(2^8-1)); %将小数转换为整数,ceil是向上取整。 48 fprintf(fid,','); 49 end 50 if i%15==0 51 fprintf(fid,'\n'); 52 end 53 end 54 fclose(fid);    设计DDS 这是DDS的原理图,DDS并没有像它的名字一样说的那么玄乎,它的核心便是控制频率的fword字输入,和相位字pword输入,最后调用IP核查找表即可,代码也十分简单,下面给出DDS design代码。 1 module DDS( 2 input mclk, 3 input rst_n, 4 input [31:0]fword

    1.7K50发布于 2018-01-05
  • 来自专栏EMQ 物联网

    QUIC 双向认证、DDS 代理功能升级

    为了方便 MQTT 用户能够简单快速上手 DDS Proxy 功能,3 月这一工具正式发布:NanoMQ 推出了 IDL 代码生成器功能:idl-serial-code-gen。 forward_rules = { ## DDS to MQTT dds_to_mqtt = { from_dds = "MQTTCMD/topic1" to_mqtt = "DDS/topic1" struct_name = "remote_control_result_t" } ## MQTT to DDS mqtt_to_dds 目前虽然有了自动化代码生成工具,但 DDS Porxy 功能编译安装过程较为繁琐,对于不熟悉工程结构和 DDS 操作的用户来说比较困难。 其他修复和更新NanoMQ 0.17 版本还有一些小功能更新:支持 Retain 消息持久化至 SQLite3: 根据用户需求,为 NanoMQ 新增了,当开启 SQLite 的消息缓存和持久化功能时默认存储所有的

    2K50编辑于 2023-04-07
  • 来自专栏C++开发学习交流

    【C++】DDS:FastDDS环境配置与使用示例

    3.安全性:Fast DDS 提供了可靠的数据传输和身份验证机制,以确保数据的机密性和完整性。它支持加密和访问控制,保护敏感数据不受未授权方访问。 FastDDS 在实时数据通信领域具有广泛的应用,特别适用于分布式系统、实时控制和监控系统、机器人技术、物联网等领域。 参考:https://www.jianshu.com/p/b9eb5dd9559f 3. /dds/publisher/Publisher.hpp> #include <fastdds/dds/publisher/DataWriter.hpp> #include <fastdds/dds/publisher /dds/subscriber/Subscriber.hpp> #include <fastdds/dds/subscriber/DataReader.hpp> #include <fastdds/dds

    7.1K11编辑于 2024-07-24
  • 来自专栏云深之无迹

    迷人的DDS数字下变频(YUNSWJ 仿真版)

    亲爱的看官,昨天后半夜没忍住,写了一个高速 ADC,其实表面参数之外,还有很多值得研究的东西,比如这么大的采样率,后面究竟在处理什么?

    23310编辑于 2026-01-07
  • 来自专栏C++开发学习交流

    【C++】DDS:OpenDDS环境配置与使用示例

    Distribution Service)是一个开源的、高性能的实时数据分发和通信框架,符合OMG(Object Management Group)发布的Data Distribution Service(DDS 3.多种数据类型支持:OpenDDS支持多种数据类型的交换,包括结构体、数组、枚举和序列等。 /configure # 编译 make 3. 使用说明 官方示例: source setenv.sh cd DevGuideExamples/DCPS/Messenger ./run_test.pl

    2K10编辑于 2024-07-24
  • 来自专栏机器人课程与技术

    ROS2编程基础课程--DDS

    ROS 2和不同的DDS / RTPS供应商 ROS 2 is built on top of DDS/RTPS as its middleware, which provides discovery 本节详细介绍采用DDS实现和(或)DDS的RTPS有线协议的缘由,但先总述一下,DDS是一个端到端的中间件,它提供了ROS系统相关的功能,例如分布式发现(并不是ROS 1采用的集中式,如roscore) ROS 2支持多种DDS / RTPS实现,因此在选择供应商/实现时,并不是“一刀切”。在选择中间件实现时,可能会考虑许多因素:许可、技术、平台可用性或计算占用空间等因素。 对于每个策略,还有“system default”选项,它使用可以通过DDS供应商工具(例如XML配置文件)定义的底层中间件的默认值。DDS本身具有可以配置的更广泛的策略。 虽然ROS 2为常见用例提供了一些QoS配置文件,但使用DDS中定义的策略允许ROS用户利用现有DDS文档的庞大知识库来为其特定用例配置QoS配置文件。

    1.7K41发布于 2019-09-18
  • 来自专栏机器人课程与技术

    ROS2和DDS學習筆記

    參考資料鏈接: ROS on DDS:http://design.ros2.org/articles/ros_on_dds.html ROS 2 and different DDS/RTPS vendors :https://index.ros.org/doc/ros2/Concepts/DDS-and-ROS-middleware-implementations/ ROS2 + DDS: When ROS2 and DDS? More technical Pub/Sub model difference between ROS and DDS DDS Participant, topic, publisher, subscriber but not using the ROS2 API over DDS.

    1.4K30发布于 2019-08-15
  • 来自专栏海风

    ROM存储14周期正弦信号构造DDS

    简单的dds程编写过程中我遇到问题以及一些个人的思考。初次接触FPGA,如有问题请多多指教~ 1.几个疑问,解决和没有解决的。 为何采用ROM而不是直接采用DDS核来进行正弦信号的合成? 实际中如果只需要合成正弦信号,那么DDS核是一个很好的选择,而且DDS核可以选择是否采用泰勒校正以获取更低的杂散。由于ROM表中的数据可以由我们自己选择,采用ROM做DDS具有更强的灵活性。 程序(请原谅我没有用case……) %% 正弦波dds产生 F_CLK=10*10^6; %时钟频率10M PINC_IN_L=32; %增量长度 DDS_CLK=10*10^3; %dds end end end end plot(dds_out); 3.DDS的解释 Xilinx的DDS核的User Guide中队DDS做了很详细的说明 ,本节不再重复此内容,本节将叙述一种全新的DDS理解方式。

    1.2K20发布于 2019-09-11
  • 德思特干货 | DDS技术深度解析系列(一):多音信号生成与客制化频率斜率

    在上一期内容中,我们系统性地剖析了传统任意波形发生器(AWG)的工作模式,详细阐述了直接数字频率合成(DDS技术的基本原理,并对两种模式进行了深入的对比分析。 本期我们将聚焦DDS模式,就其核心特性展开更专业的探讨,探讨多音信号和固有频率的本质。 01 多音信号 DDS 模块由多达 N 个 DDS 核心组成,其输出相加并输出到一个或多个模拟通道(图 1)。 目前,TS-M4i.66xx 系列 DDS 固件在单个通道上最多有 N = 20 个核心。96xx 系列可以支持N=50 个核心。 02 客制化频率斜率 尽管 DDS 模块仅支持线性斜率,但可以使用有限数量的线性频率斜率近似其他斜率类型,这些斜率形成所需形状的分段线性插值。 在下一期内容中,我们将详细介绍如何动态调整DDS的设置,解析相位连续性在信号合成中的关键作用,并演示如何利用模式命令来控制XIO输出线,这些功能共同构成了DDS精确控制的核心机制。敬请期待,干货满满!

    36610编辑于 2025-08-12
  • 来自专栏全栈程序员必看

    求生之路2ping高_DDS信号源

    主持人简介: 吴洪声(人称:奶罩):腾讯云中小企业产品中心总经理,DNSPod创始人,洋葱令牌创始人,网络安全专家,域名及DNS技术专家,知名个人站长,中欧国际工商学院校友。 创始人戴志康、知识星球吴鲁加、腾讯安全学院副院长杨卿等技术大咖、行业领军人物都在这个栏目留下了他们的真知灼见。比如易名中国金小刚说的:“别想着持有对社会有不良影响的域名,这是一个底线。” 比如CSDN创始人蒋涛说的:“对于一个技术驱动的公司而言,不断更换新人并不是好事,技术要有一个积累的过程,应该鼓励这些技术人去提升,对技术人员的回报或薪酬、等级要相应地跟管理平行。” 腾讯云服务器公众号、腾讯云助手、腾讯乐问、腾讯码客圈、腾讯KM平台、腾讯云+社区、腾讯云+大学等平台累计关注度高达数十万,同时我们积极开拓与外部媒体的合作,如腾讯科技、腾讯新闻、新浪微博机构号、CSDN社区技术专栏 、知乎机构号、企鹅号、搜狐号、头条号、开源中国技术社区、IT之家、InfoQ社区资讯站点、Twitter机构号、Facebook机构号等媒体阅读总量逾百万。

    57530编辑于 2022-11-17
  • 来自专栏EMQ 物联网

    QUIC 多流桥接、新增 DDS 协议转换代理

    *关于 MQTT over QUIC 的技术解析可参考:MQTT over QUIC:物联网消息传输还有更多可能 QUIC 多流桥接 QUIC 协议相较于 TCP 的一大优势在于解决了队首阻塞的问题,但这是依赖于 图片 如上图所示,单路 Stream 的情况下若 Topic 1 QoS 1 消息重传,会导致 Topic 2 和 Topic 3 的消息被阻塞。 NanoMQ 0.16 发布了 DDS Proxy 插件,其基于 Cyclone DDS (基于 OMG(Object Management Group)DDS 规范的开源 DDS 实现)开发,能够完成将 目前还需要用户自行将生成的代码 dds_type.h 和 dds_type.c 替换 dds_mqtt_type_conversion.h/dds_mqtt_type_conversion.c/dds_client.c 启动 DDS 客户端订阅 DDS 主题 MQTT/topic1 $ .

    1.2K30编辑于 2023-03-07
  • 来自专栏python3

    3层交换技术

    Switch>en Switch#vlan database Switch(vlan)#vlan 2 name vlan2 VLAN 2 added: Name:vlan2 Switch(vlan)#vlan 3 name vlan3 VLAN 3 added: Name:vlan3 Switch(vlan)#vtp server Switch(vlan)#vtp domain lcl VTP domain lcl 192.168.2.1 255.255.255.0 Switch(config-if)#no shut Switch(config-if)#exit Switch(config)#int vlan 3 vlan 2 Switch(config-if)#exit Switch(config)#int f0/2 Switch(config-if)#exit Switch(config)#int f0/3 Switch(config-if)#switchport mode access Switch(config-if)#switchport access vlan 3 Switch(config-if)

    46010发布于 2020-01-09
  • 来自专栏云上修行

    ROS2使用 Fast DDS Discovery Server 作为发现协议

    背景在当今的机器人技术和自动化系统中,快速、可靠的消息传递机制是实现高效通讯的关键。 Fast DDS Discovery Server是由eProsima公司开发的一种基于DDS (Data Distribution Service)协议的通讯架构。 本文旨在解析Fast DDS Discovery Server的原理、特点以及如何在ROS2中使用它来优化节点发现和数据通信。 Fast DDS Discovery Server工作原理在Fast DDS Discovery Server架构中,Discovery Server负责收集系统中所有节点的信息,并维护这些信息。 mtu 1500 inet 172.16.15.37 netmask 255.255.252.0 broadcast 172.16.15.255 inet6 fe80::3fc3

    3K20编辑于 2024-02-02
领券