Questions tagged [picoblaze]

PicoBlaze is a free 8-bit soft processor core from Xilinx for use in their FPGA and CPLD products.

PicoBlaze (PB) is 8-bit processor from Xilinx developed by Ken Chapman. It's also known as KCPSM (Ken Chapman's Programmable State Machine). The soft processor has two register banks each of 16 registers, up to 256 byte scratch pad memory, 256 I/O addresses and handles interrupts. It can be synthesized for Xilinx FPGA devices from Coolrunner 2, Virtex-II, Spartan-3 up to the newest Virtex-7 FPGA. The PB comes with a 4k instruction ROM, which can be reprogrammed at runtime via JTAG by a integrated JTAG_Loader device.

17 questions
4
votes
0 answers

PicoBlaze 8-bit Microcontroler jump and call instruction

I am a student and I have to create an PicoBlaze 8-bit Microcontroller based on this documentation XAPP213. I have a problem when I have to run a jump or call instruction: When I jump or call the next instruction I forced to be a NULL instruction…
Tandura
  • 866
  • 2
  • 7
  • 19
2
votes
3 answers

Floating-point addition assembly algorithm

I'm trying to write a binary 8 bit floating point addition algorithm for a picoblaze microcontroller (1 sign bit, 4 exponent bits, and 3 mantissa bits) I got it to work with positive numbers but I can't figure out how to do it when there are…
alpacaboi
  • 41
  • 2
2
votes
1 answer

How to suppress a 'missing termination character' warning in cpp?

I'm trying to use cpp (ANSI-C preprocessor) to preprocess some non ANSI-C files. These files contain assembly instruction in PicoBlaze syntax. PicoBlaze uses 'd to annotate the literal's radix. I would like to preprocess my files with cpp. I get…
Paebbels
  • 15,573
  • 13
  • 70
  • 139
1
vote
0 answers

Assignment issue with std_logic_vector

I'm trying to write a component (mem_interface) that takes 8 bit input vectors for address and data, writes them into specific positions in larger vector buffers depending on an index, and then outputs these larger vector buffers when asked. The…
Deskarano
  • 33
  • 1
  • 3
1
vote
0 answers

multiple use of KCPSM3 (picoBlaze)

I am currently working on a project that has to incorporate more than one picoBlaze. I am very new to the world of VHDL so I would like to ask you a question. I created a new project and added source "KCPSM3.vhd". Then I created a top level entity…
Aurolio
  • 11
  • 1
1
vote
2 answers

Can Xilinx ISE iMPACT write an SVF to a PicoBlaze like Adept can?

I'm midway through a VHDL class and have been able to play relatively nice with the ISE and Digilent toolchain in Linux... until trying to reflash a PicoBlaze program. For details, I am currently running and targeting, Fedora 21 64-bit…
washer
  • 37
  • 1
  • 7
0
votes
0 answers

Does PicoBlaze have separate flags for each regbank (like Z80), or are the same flags used in both regbanks?

Does PicoBlaze have separate flags for each regbank (like Z80), or are the same flags used in both regbanks? For instance, consider the following code: regbank a load s0, 0 sub s0, 0 regbank b load s0, 1 sub s0, 0 regbank a jump z , success jump…
FlatAssembler
  • 667
  • 7
  • 30
0
votes
0 answers

Picoblaze assembly How to add 16bits to itself

I have 8bits register s3 is the LSB 0x00 of the display I also have 8bits register s4 is the MSB 0x00 of the display The display shows as s4/s3 0000 which is 16 bits values When the display has a value 0x0103, I want to add it to itselt assembly…
Tenz
  • 535
  • 2
  • 7
  • 27
0
votes
1 answer

Converting from binary to gray works in assembly, but not vice versa

I am trying to build a program for PicoBlaze which will translate from Gray code to binary and vice versa. Here is what I've made thus far: address 0 start: ;Infinite loop... ;Converting from binary to gray... constant binary_input,0 constant…
FlatAssembler
  • 667
  • 7
  • 30
0
votes
0 answers

Understanding Multiplication in Assembly

I'm trying to understand how this piece of assembly code makes an 8-bit multiplication. I do know what each line do, but I can't understand how it makes the whole multiplication. Can you please explain how it makes the multiplication? Thanks in…
user204415
  • 307
  • 1
  • 4
  • 20
0
votes
0 answers

difference between micro8 and pacoblaze3 and how to use micro8

I am implementing a hardware project(Verilgo) in FPGA using pacoblaze3. Everything works fine, and then I heard that Micro8 could offer a faster speed. I want to switch the soft processor to Micro8. I found Micro8 has the exact interface as…
Junwei su
  • 138
  • 1
  • 10
0
votes
1 answer

VHDL - reading from VGA's framebuffer

I have an FPGA school project and I'm having some problems. We're using Digilent's Nexys2 board (Xilinx XC3S500E FPGA). We built a few controllers including VGA (640x480) with a framebuffer. At least we called it a framebuffer - it's actually a…
Luka
  • 7
  • 6
0
votes
1 answer

How to change the comment sign for m4's --synclines option?

I'm using m4 preprocessor with the command line option --synclines. This option emits #line lines after each expanded multi line. Example: ; sr0(, ) unrolls the sr0 statement for times. sr0(reg_0, 3) sr1…
Paebbels
  • 15,573
  • 13
  • 70
  • 139
0
votes
1 answer

How to change buttons for functions in Assembler

I have a problem with my code in Assembler. I have these stopwatches. By pressing Button 1, it will start counting, by pressing it again ti will pause the counting, by pressing Button 2, it will reset and by flipping over the Switch number 1 it will…
Arcane
  • 669
  • 1
  • 10
  • 25
0
votes
1 answer

How to reverse my stopwatch code to count down in Assembler?

I have written this code for stopwatch in Assembler. If you press button1, it will start counting up. If you press the same button again, it will pause, pressing it once more will resume the stopwatch. Pressing the button number 2 resets the…
Arcane
  • 669
  • 1
  • 10
  • 25
1
2