Search the Community: Showing results for tags 'ise'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • GadgetBox Universal IoT Hardware
    • GadgetBox General Discussion
  • Papilio Platform
    • Papilio General Discussion
    • Papilio Pro
    • Papilio One
    • Papilio DUO
    • Papilio Wings
    • DesignLab IDE
    • DesignLab Libraries
    • RetroCade Synth
    • Papilio Arcade
    • Papilio Loader Application
    • Papilio Logic Sniffer
    • Retired
  • Electronics
    • Modules
  • Soft Processors
    • ZPUino
    • J1 Forth
    • AVR8 Soft Processor
  • Community
    • Gadget Factory
    • Documentation
    • FPGA Discussions
    • Community Projects
    • Pipistrello
  • Open Bench
    • Open Bench Logic Sniffer at Dangerous Prototypes
    • OpenBench Logic Sniffer at Gadget Factory
  • Gadget Factory Internal Category

Categories

  • Papilio Platform
    • Papilio One
    • Papilio Plus
    • Papilio Wings
    • LogicStart MegaWing
    • ZPUino
    • Papilio Pro
  • Papilio Arcade
  • RetroCade Synth
  • Logic Sniffer
  • FPGAs
  • DesignLab
    • Example Projects
    • Libraries

Categories

  • Papilio FPGA
    • Papilio UCF (User Constraint) Files
    • Papilio Bit Files
  • Papilio Arcade
  • RetroCade Synth
  • General
  • Beta (Test) Releases
  • Books

Found 10 results

  1. hi, i'm using designlab 1.0.8 with ise 14.7 on ubuntu 17.04 amd64, targeting a papilio pro/spartan 6 with the zpuino soft processor. i've got a working proof-of-concept design which combines a few bits and pieces, namely the whirlyfly (whirlygig) random number generator (https://github.com/zdavkeos/whirlyfly), a couple wishbone uart's (COMM_zpuino_wb_UART.vhd), and a wishbone watchdog peripheral written in verilog that i've been trying to integrate (https://github.com/freecores/watchdog/tree/master/rtl/verilog). the rng and uart components appear to be working fine, giving me up to 280KB/s or so of random data when polling both wishbone uart's sequentially at 3mbit/s. i'm then using the reference blake2s hash implementation (https://github.com/mjosaarinen/blake2_mjosref) to further "whiten" the output of the rng's. this slows down the output to about 30KB/s which is fine considering it's a complex operation. that's not the issue. anyhow, the wishbone peripherals included in designlab, as well as the schematic representation of the zpuino 2.0 soft processor bundle the input and output wires into the wishbone_in/wishbone_out connections, which i assume is for simplicity when placing components using the schematic editor in ise. the watchdog.v implementation linked previously is designed with all of the wishbone wires broken out like: module watchdog(wb_clk_i, wb_rst_i, wb_dat_i, wb_dat_o, wb_we_i, wb_stb_i, wb_cyc_i, wb_ack_o, wb_int_o); i've been trying unsuccessfully now for a while to modify the watchdog.v to present the same interface, so i can easily attach it to the zpuino using the schematic editor gui (i.e. Papilio_Pro.sch) in ise. without knowing how to modify the schematic symbol after generating it, i just took the one from the wishbone uart included in designlab, replaced the relevant variables and removed the tx/rx, and overwrote the existing watchdog.sym in the project directory. that seemed to work fine and let me drag & drop the watchdog onto an open wishbone port on the zpuino. the issue i'm having is that i can't seem to get the pre-synthesis rtl schematic viewer in planahead to "alias" the slices of wishbone_in/wishbone_out to the friendly-named wires representative of their function within the wishbone bus (e.g. wire [31:0] wb_dat_i; assign wb_dat_i [31:0] = wishbone_in [59:28];). the design does synthesize fine, but i haven't bothered trying to write C code for the zpuino to interface/write with the watchdog peripheral because of the apparent brokenness being shown in planahead. here's a simplification of what i've been doing unsuccessfully to create the "friendly" aliases of wishbone_in/wishbone_out: // original, simplified module watchdog(wb_clk_i, wb_rst_i, wb_dat_i, ...); parameter Tp = 1; input wb_clk_i; input wb_rst_i; input [`WDT_WIDTH - 1:0] wb_dat_i; ... // new, simplified module watchdog(wishbone_in, wishbone_out); parameter Tp = 1; input [100:0] wishbone_in; output [100:0] wishbone_out; wire wb_clk_i = wishbone_in [61]; wire wb_rst_i = wishbone_in [60]; wire [31:0] wb_dat_i; assign wb_dat_i [31:0] = wishbone_in [59:28]; ... // mutual code between original & new ... always @(posedge wb_rst_i or posedge wb_clk_i) if (wb_rst_i) begin stb <= #Tp 1'b0; we <= #Tp 1'b0; dat_ir <= #Tp `WDT_WIDTH'h0; end else begin stb <= #Tp wb_stb_i && wb_cyc_i; we <= #Tp wb_we_i; dat_ir <= #Tp wb_dat_i; end ... attached are abridged screenshots of what planahead shows for the unmodified verilog code straight from the aforementioned github repo (top image), and the seemingly broken output from my modified version where i try to bundle up the wires into wishbone_in/wishbone_out. the dat_ir is where wb_dat_i is showing a single wire instead of [31:0]. also attached is the work-in-progress modified watchdog.v. please keep in mind that these are the first lines of vhdl/verilog i've ever written so my knowledge of syntax/terminology is very limited. thanks! watchdog.v
  2. Hi. I am new to FPGA design (but an experienced electronics engineer). I am learning how to create simple designs on a Papilio One 500k with ISE schematics. I am familier with basic logic design, and so far I have created some simple combinational logic and a divider chain to produce a 10Hz clock. This works fine, but when after editing and add more bits on, the existing parts no longer function properly. The frustrating thing is that the schematics look correct, but they do not function as expected on the FPGA. After searcing the internet for answers, I suspect it might be something to do with net names or constraints, but that's as far as I have got. Can anyone point me in the right direction (I cannot be the only beginner have these problems!)? By the way, I am aware there are limitations in using schematics (compared with using Verilog or VHDL). I am developing this project for my college students and there will be insufficient time for them to learn an HDL, although I will of course give them an introduction to the subject. Many thanks for reading this.
  3. Hi, I am new to this forum. I am running a course on logic design and I want to include a practical introduction to FPGAs. I am considering Papilio as the platform to use as there will not be time to learn VHDL or Verilog. My students are already used to using schematic design tools such as Proteus. We are using Windows 10. Is Papilio the right solution? I understand that Xilinx have superseded ISE with Vivado (which is more complicated and does not allow schematic entry). How does this affect Papilio and DesignLab? Many thanks.
  4. After finding the software i needed to make use of the design lab, i've encountered some obstacles. It's asking me to fill out company related info.
  5. External programmer needed?

    Hi, Although all papilio-Dues have the same hardware, I am very curious to know why papilio-due's ability to be programmed in xilinx impact (using digilent plugin) is marked as an unsupported feature that works for some board on may not works for some others? regards.
  6. Hi, I'm workingt on getting started with the DesignLab and ISE workflow, and for that I'm trying to build a simple project without ZPUino. I created a new DesignLab project, edited the circuit in ISE, deleted the ZPUino and everything else from the schematic. I then built a minimal circuit with a clk_divider_30to1hz symbol from the Papilio libraries. I can create a bit file, upload it to the Papilio DUO, and after connecting two LEDs to the configured pins I have two LEDs flashing at 1 Hz and 8 Hz as expected. As a next step I'm trying to run the circuit in the ISim simulator, and I haven't been able to make that work yet. I created a new VHDL test bench, and I added a process for the CLK signal. When I'm starting the simulation, the following warnings appear when the simulation is built: WARNING:HDLCompiler:89 - "C:/Users/stm/Documents/DesignLab/divider/circuit/DUO_LX9/Papilio_DUO_LX9.vhf" Line 68: <clk_divider_30to1hz> remains a black-box since it has no binding entity.WARNING:Simulator:648 - "C:/Users/stm/Documents/DesignLab/divider/circuit/DUO_LX9/Papilio_DUO_LX9.vhf" Line 68. Instance clk_divider_30to1hz is unbound In the wave window the two outputs from the clk_divider_30to1hz symbol appear with an "U" in the "Value" column (see attached screen shot). If I understand it correctly, this means that the two outputs are uninitialzed. Is there any additional configuration necessary in order to run a ISim simulation for a DesignLab project that uses symbols from the Papilio libraries? My test project is also available via DropBox if someone is interested: https://www.dropbox.com/s/loctq3jnw0kz1av/divider.zip?dl=0 ThanksStephan
  7. I'm using Xilinx ISE 14.7 to program a Papilio One 250k. I'm trying to simulate a process that uses a BUFG component, and the output of the component is all 0 -- it doesn't follow the input. Here's a small snippet of code: library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;entity UART is Port ( CLK : in std_logic; -- CLK runs at 32 MHz CLKDIV : in unsigned(15 downto 0); -- divide to bit clock );end UART;architecture Behavioral of UART is signal BITCLK : std_logic := '0'; -- four clocks per bit signal PREBITCLK : std_logic := '0'; component BUFG port( I : in std_logic; O : out std_logic ); end component;begin Bitclk_Bufg: BUFG port map( I => PREBITCLK, O => BITCLK ); Clk_Proc: process(CLK, CLKDIV) variable PREVDIV : unsigned(15 downto 0) := to_unsigned(0, 16); variable CURCNT : unsigned(15 downto 0) := to_unsigned(0, 16); begin if rising_edge(CLK) then if not (PREVDIV = CLKDIV) then CURCNT := to_unsigned(0, 16); PREVDIV := CLKDIV; elsif CURCNT = PREVDIV then CURCNT := to_unsigned(0, 16); PREBITCLK <= not PREBITCLK; else CURCNT := CURCNT + 1; end if; end if; end process;...I see CLK coming in in my simulation, and I see PREBITCLK being generated. However, the BITCLK output is just 0 no matter how long I run the simulation. Why is this? Isn't it supposed to just buffer the clock, and thus repeat the input? How can I make it do that?
  8. Version 1.0

    1,212 downloads

    Build your own custom ZPUino System on Chip design using the Schematic editor! Just drag and drop the wishbone peripherals you want to design a ZPUino Soft Processor with exactly what you want and then program it with the ZAP IDE. Note: This works under Linux but there are bugs with the schematic editor that give mixed results.
  9. (This includes observations and details that may be of use to other new users and those new to the Pro, as well as my own questions to follow.) What I'm using: Papilio Pro v1.3LogicStart MegaWing v1.2Windows 7Xilinx ISE Webpack 14.4 (Xilinx_ISE_DS_Win_14.4_P.49d.3.0 from the Vivado and ISE Design Suites download sub-section)Xilinx Device Pack 2012.4.1 (includes important updates for the WebPack)Papilio Loader-2.4-Setup-noJava (I already have Java)Notes: To the admin: There's a beta 2.0 Loader I stumbled across elsewhere on this site. It appears to be out-of-date.The loader may show an older version on its title bar. I've opened an issue with regard to this but it didn't cause problems for this example.Install the Papilio Loader, the Xilinx WebPack software, and the Xilinx Device Pack. Create the license for the free features of the ISE Design Suite and import that license (which you'll receive via email) to the ISE Design Suite. Open the ISE Design Suite and create a new HDL project with Spartan-6 settings appropriate to the Papilio Pro (Note that "Enable Message Filtering" is optional but useful): (At this point I'm mostly following the Intro to Spartan FPGA book with some important changes.) Add a new source VHDL module. Rather than using the wizard, I pasted in the source for this entity directly from the book (be sure to edit out any cruft if your copy spanned a page-break). Note that the entity name doesn't need to match the module name. Add an Implementation Constraints file (I called mine constraints.ucf). This was a little more tricky, since the pins in the book are for the Papilio One 500K, not the Pro. Retrieve the BPM7003-Papilio-Pro-LogicStart-MegaWing-general.ucf file and use it to find the appropriate pin mappings for the Pro (if you cut-and-paste these from the UCF, be sure to rename them accordingly!) This is what I used: NET SWITCH_0 LOC="P114" | IOSTANDARD=LVTTL; # C0NET SWITCH_1 LOC="P115" | IOSTANDARD=LVTTL; # C1NET LED_0 LOC="P123" | IOSTANDARD=LVTTL; # C8NET LED_1 LOC="P124" | IOSTANDARD=LVTTL; # C9Select the VHD file and you'll see the option in the pane below to "Generate Programming File". Run it. You shouldn't get any warnings or errors for this example. Plug in the Papilio Pro (with the LogicStart wing attached). Ensure the drivers load (it may take a short bit the first time you use it). Start the Loader and select the .bit file you just created in your project area (leave the .bmm and .hex file entries blank). Be sure "SPI Flash" is selected below "Write to". Select "Do Selected Operations" and wait for the programming process to complete successfully (there's troubleshooting info in the book and on the forums here). Try it out! The switches enabled by this module happen to control the LEDs above them. Change things! Swap switch_0 and switch_1 in the architecture section of the design, rebuild and upload again - now the switches control the opposite LEDs. Hopefully you find this quick-start useful! I have some questions which I'll add in the first comment below.
  10. Hi PApilio nuts. Hope everyone had a nice holiday. I have recently bought the 500K board from Seedstudio and am awaiting delivery!! In the meantime I have started reading the introduction book written by HAmster and have downloaded the massive 6 Gb installation pack for the ISE from Xilinx. I have a question regarding installation: When installing, Which actual product do I install? Is it just ISE design suite system edition and Vivado system edition or do i have to choose another "Product to install" ?? Im not sure... The one I mentioned takes up a healthy 16298 megabytes... Thanks, STeve.