PSOC with verilog, how big a design can one make?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I wonder how big a design one can make with the UDB in the PSOC5 LP. I use Xilinx Spartan/Virtex parts often but PSOC5 is very interesting to study. How big can one make with a single UDB in terms of ASIC gates? Can 24 UDB be combined to make a bigger design? 

0 Likes
5 Replies
AnkitaS_51
Employee
Employee
100 likes received 50 likes received 25 likes received

Hello ,

   

 

   

You can look into this application note for better understanding of UDB -

   

http://www.cypress.com/documentation/application-notes/an82156-psocr-3-psoc-4-and-psoc-5lp-designing...

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

Yes, you can combine the UDBs into larger designs. For comparision: a UDB has 2 PLDs in it, each with 4 Macrocells. So 24 UDB equal to 192 MCs - meaning a PSoC5 is a little bit larger than e.g. a XC95144. Its way smaller than a Spartan or Virtex FPGA.

0 Likes
Anonymous
Not applicable

thank you ANKS and hli. 

   

Are there any restrictions on the verilog language syntax? Without considering device specific macros, does one need to re-code reuseable verilog codes in order to work with the psoc tools? 

0 Likes
lock attach
Attachments are accessible only for community members.
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

lis_user1,

   

1. The Warp Verilog used in PSoC5 is very much stripped-down version of Verilog. You will not find there constructs like "initial",  "signed" or "arithmetic shift", etc. Useful links which include pretty much all available resources on the subject:

   

Warp Verilog Reference - see attached.

   

Just Enough Verilog for PSoC® - KBA86336

   

FAQs - Basic of datapath and verilog components

   

AN82250 - PSoC® 3 and PSoC 5LP Implementing Programmable Logic Designs with Verilog

   

AN82156 - PSoC® 3 and PSoC 5LP - Designing PSoC Creator™ Components With UDB Datapaths

   

Creating a Verilog-based Component - KBA86338

   

PSoC® Creator™ Component Author Guide

   

 

   

2. There is a distinction between UDB datapath blocks and PLD units in PSoC. The PLD's can be programmed using Verilog language similar to FPGA. UDB datapath are modules (state machines) that are not easily programmable Verilog, but rather being glued together using the Verilog language. 

   

As an example, attached below is a test project showing distinction between UDB and PLD modules and also demonstrating the limits of how many 24-bit DDS units can be squeezed into PSoC5. First, all available UDB's have been utilized to make 7x  DDS32 using UDB datapath modules and the rest remaining PLD space was filled with 6x 24-bit DDS24 modules written entirely in Verilog (no datapath used). Maximum amount of 24-bit DDS modules that could fit into PSoC5LP is 13.

   

P.S. compiling project will require libraries: DDS24 and DDS32 (attached)

   

  

   

 

   

0 Likes
duno_297731
Level 3
Level 3
10 sign-ins 10 replies posted 10 questions asked

Thanks.  it looks like the symbol generation might be my best bet for simplicity, since I don't need a highly complex design, but the existing primitives make for a cumbersome design.  I will give that a try

0 Likes