Re: [Discuss OpenCPI] Platform Worker Connected to Pins

From: Marasco, Aaron <aaron.marasco_at_bia-boeing.com>
Date: Wed, 24 Apr 19 16:33:14 +0000

(I accidentally sent directly to Josh and not the list sorry - to populate the archives, here's the response.)

________________________________
From: Marasco, Aaron
Sent: Tuesday, April 23, 2019 11:51
To: EXT-Schindehette, Joshua (Geon)
Subject: Re: [Discuss OpenCPI] Platform Worker Connected to Pins

Hi Josh... here's some feedback you can try:

Here's a couple of observations/recommendations:

1. It looks like your platform worker has incorrect XML tags (e.g. HdlDevice). I would recommend using 'ocpidev create hdl platform foo' to create platform worker skeletons, and using an example XML (e.g. opencpi.git/projects/assets/hdl/platforms/zed/zed.xml ) for filling in functionality.
2. Custom platform worker specs are not supported at this time, platform-spec must be used.
3. Device pins are connected to the FPGA via device worker signals or platform worker signals.
4. Device workers must be instanced in either
    a) a card XML (if the device exists on a card connected to the platform via a slot), e.g. opencpi.git/projects/assets/hdl/cards/spec/fmcomms_2_3_lpc.xml, or
    b) in the platform XML itself (if the device exists on the FPGA's PCB, e.g. opencpi.git/projects/assets/hdl/platforms/matchstiq_z1/matchstiq_z1.xml ).
5. Device workers must be instanced in either:
    a) a platform config XML, e.g. opencpi.git/projects/assets/hdl/platforms/zed/cfg_1rx_1tx_fmcomms_2_3_lpc_lvds.xml, or
    b) a container XML, e.g. opencpi.git/projects/assets/hdl/assemblies/empty/cnt_hsmc_alst4_debug_header_breakout_card_hsmc_alst4_a.xml

Let us know if you have more questions or need more clarification
________________________________
From: discuss <discuss-bounces_at_lists.opencpi.org> on behalf of Josh Schindehette <jschindehette_at_geontech.com>
Sent: Monday, April 22, 2019 15:00
To: discuss_at_lists.opencpi.org
Subject: [Discuss OpenCPI] Platform Worker Connected to Pins

Hello,

I'm trying to develop a Platform worker that connects to the pins of the
FPGA. I can build the platform worker and the platform ok, but when I try
to build a bitstream with the testbias assembly, the following error is
generated:

External signal "MY_PIN" specified for signal
"my_platform_worker_my_vhdl_port" of instance "pfconfig" of worker
"my_platform_config" is not an external signal of the assembly


In the Platform XML I listed the device like so:

<Device worker='my_platform_worker'>
    <Signal name='my_vhdl_port' platform='MY_PIN'/>
    ...
</Device>


I created a Platform configuration which instantiates the worker, and I
added the configuration to the Makefile "Configurations":

<HdlConfig Language='vhdl'>
  <Device name='my_platform_worker'/>
</HdlConfig>


The Platform worker has an XML configuration:

<HdlDevice language='vhdl' spec='my_platform_worker-spec'>
    <Signal input='my_vhdl_port' />
    ...
</HdlDevice>


The "my_platform_worker-spec" is EMPTY.

In the testbias assembly, I added a "container XML" with the following
code, and I added it to the Makefile's "Containers".

<HdlContainer only='zcu111' config='my_platform_config' default='1'/>


Any idea what is going wrong?

Thanks,
Josh Schindehette


Received on Wed Apr 24 2019 - 16:33:14 CDT

This archive was generated by hypermail 2.3.0 : Fri Jun 05 2026 - 08:45:25 CDT