]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/lx-rocon.git/log
fpga/lx-cpu1/lx-rocon.git
9 years agoRoCoN: use BlueBot drawing declared axis order after population of another two bridges. bluebot
Pavel Pisa [Fri, 27 Jun 2014 22:32:37 +0000 (00:32 +0200)]
RoCoN: use BlueBot drawing declared axis order after population of another two bridges.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: change testlxpwrrx stored set of data to include PWM values as well.
Pavel Pisa [Wed, 18 Jun 2014 21:57:57 +0000 (23:57 +0200)]
RoCoN: change testlxpwrrx stored set of data to include PWM values as well.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: added support and test command to capture LXPWR ADC stream.
Pavel Pisa [Tue, 17 Jun 2014 20:52:03 +0000 (22:52 +0200)]
RoCoN: added support and test command to capture LXPWR ADC stream.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: correct variable name in pxmc_rocon_receiver_chan2reg.
Pavel Pisa [Tue, 17 Jun 2014 20:50:33 +0000 (22:50 +0200)]
RoCoN: correct variable name in pxmc_rocon_receiver_chan2reg.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoProvide output event indication end of reception from LXPWR.
Pavel Pisa [Tue, 17 Jun 2014 18:03:10 +0000 (20:03 +0200)]
Provide output event indication end of reception from LXPWR.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: implement HAL sensors reading and processing for BLDC/PMSM.
Pavel Pisa [Sun, 15 Jun 2014 22:34:46 +0000 (00:34 +0200)]
RoCoN: implement HAL sensors reading and processing for BLDC/PMSM.

LXPWR receiver configuration is set for single AGL
in chain for now. The chain length should
to be auto-detected.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoImplemented initial version of LXPWR receiver FSM based on transmitter.
Pavel Pisa [Sun, 15 Jun 2014 21:24:10 +0000 (23:24 +0200)]
Implemented initial version of LXPWR receiver FSM based on transmitter.

The basic implementation does not check CRC for now.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoProvide direct pass-trough drive of i_rd_s from filtered rd_f_s.
Pavel Pisa [Sun, 15 Jun 2014 10:07:24 +0000 (12:07 +0200)]
Provide direct pass-trough drive of i_rd_s from filtered rd_f_s.

This violates standard next_.._s -> register pattern
but only registered signals are used for i_rd_s
generation and shift one cycle forward allows
to use shorter read access cycle.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoAssign next_last_address_s signal value in all cases to prevent generation of latches.
Pavel Pisa [Sun, 15 Jun 2014 09:25:26 +0000 (11:25 +0200)]
Assign next_last_address_s signal value in all cases to prevent generation of latches.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: reset max ISR spent time after its read.
Pavel Pisa [Sun, 15 Jun 2014 08:57:37 +0000 (10:57 +0200)]
RoCoN: reset max ISR spent time after its read.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: ensure that all EIM parameters for FPGA are setup.
Pavel Pisa [Sun, 15 Jun 2014 08:56:35 +0000 (10:56 +0200)]
RoCoN: ensure that all EIM parameters for FPGA are setup.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRedesign external bus access timing and logic.
Pavel Pisa [Sun, 15 Jun 2014 08:54:36 +0000 (10:54 +0200)]
Redesign external bus access timing and logic.

There has been fundamental flaws in write cycles activation
and timing which leads to write of unstable data to
unstable address when write has been activated
on partially valid BLS on start of LPC write cycle.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: Change hard-coded IRC status bit positions to named bit masks.
Pavel Pisa [Tue, 10 Jun 2014 09:04:41 +0000 (11:04 +0200)]
RoCoN: Change hard-coded IRC status bit positions to named bit masks.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: Ensure USB buffers alignment.
Pavel Pisa [Mon, 9 Jun 2014 22:04:57 +0000 (00:04 +0200)]
RoCoN: Ensure USB buffers alignment.

It is not required on Cortex-M3/4 but can speedup
operations.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: Implement USB memory transfers for 32-bit wide memory read/write.
Pavel Pisa [Mon, 9 Jun 2014 21:49:49 +0000 (23:49 +0200)]
RoCoN: Implement USB memory transfers for 32-bit wide memory read/write.

The 32-bit access target is is elected by "-t 4" parameter
of "usb_sendhex".

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoUpdate PXMC for 8 DC axes
Martin Meloun [Mon, 9 Jun 2014 16:59:39 +0000 (18:59 +0200)]
Update PXMC for 8 DC axes

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoUpdate FPGA, fix hazard conditions in BRAM
Martin Meloun [Mon, 9 Jun 2014 16:58:14 +0000 (18:58 +0200)]
Update FPGA, fix hazard conditions in BRAM

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoRoCoN: update code to build for simulated mode under Linux.
Pavel Pisa [Sat, 7 Jun 2014 11:46:31 +0000 (13:46 +0200)]
RoCoN: update code to build for simulated mode under Linux.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: reverse order for PWM channels assignment.
Pavel Pisa [Tue, 3 Jun 2014 12:19:24 +0000 (14:19 +0200)]
RoCoN: reverse order for PWM channels assignment.

The connectors are soldered on upper side of LX_PWR
board in our actual assembly which leads to reverse
order to our standard used on other boards (i.e. LMC_CB2).

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: add command to read and reset maximal time spent in PXMC isr.
Pavel Pisa [Tue, 3 Jun 2014 08:42:41 +0000 (10:42 +0200)]
RoCoN: add command to read and reset maximal time spent in PXMC isr.

The time is measured in CPU clocks which are 72 MHz for LX_CPU1.
This provides 72000 ticks per PXMC isr period. Maximum captured
time for single axis was 4153, typical even with coordinated
movement coordination 3300.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoMerge branch 'master' of rtime.felk.cvut.cz:/fpga/lx-cpu1/lx-rocon
Pavel Pisa [Mon, 2 Jun 2014 16:11:11 +0000 (18:11 +0200)]
Merge branch 'master' of rtime.felk.cvut.cz:/fpga/lx-cpu1/lx-rocon

9 years agoRoCoN: add omitted registration of global PURGE command.
Pavel Pisa [Mon, 2 Jun 2014 16:10:56 +0000 (18:10 +0200)]
RoCoN: add omitted registration of global PURGE command.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoUpdate pxmc settings
Martin Meloun [Mon, 2 Jun 2014 15:03:37 +0000 (17:03 +0200)]
Update pxmc settings

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoUpdate dff2, create dff3, fix LX Master for multiple slaves
Martin Meloun [Mon, 2 Jun 2014 13:05:52 +0000 (15:05 +0200)]
Update dff2, create dff3, fix LX Master for multiple slaves

9 years agoRoCoN: ensure that no old stalled index edge is used after axis mode change.
Pavel Pisa [Sun, 1 Jun 2014 21:10:36 +0000 (23:10 +0200)]
RoCoN: ensure that no old stalled index edge is used after axis mode change.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include basic support for asynchronous ready notification.
Pavel Pisa [Sun, 1 Jun 2014 20:37:45 +0000 (22:37 +0200)]
RoCoN: include basic support for asynchronous ready notification.

Commands R: and Rm: are compatible with same MARS8 functionality.

Functions has been successfully tested with UART based
communication but actual code for USB channel blocks
on asynchronous IO.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: enhance stepper and BLDC motor support to allow build for calibration.
Pavel Pisa [Sun, 1 Jun 2014 12:19:41 +0000 (14:19 +0200)]
RoCoN: enhance stepper and BLDC motor support to allow build for calibration.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: Add command to select motor driver type/axis mode at runtime.
Pavel Pisa [Sun, 1 Jun 2014 10:31:21 +0000 (12:31 +0200)]
RoCoN: Add command to select motor driver type/axis mode at runtime.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoUpdate pxmc submodule to use LPC17xx optimized square root approximation.
Pavel Pisa [Sun, 1 Jun 2014 06:40:29 +0000 (08:40 +0200)]
Update pxmc submodule to use LPC17xx optimized square root approximation.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoInclude sqrtll approximation for more than 48 valid bits.
Pavel Pisa [Sat, 31 May 2014 22:31:40 +0000 (00:31 +0200)]
Include sqrtll approximation for more than 48 valid bits.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include basic set of global PXMC commands.
Pavel Pisa [Sat, 31 May 2014 15:40:41 +0000 (17:40 +0200)]
RoCoN: include basic set of global PXMC commands.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: fix mixed use of calibrated and raw IRC for phases commutator.
Pavel Pisa [Sat, 31 May 2014 13:44:54 +0000 (15:44 +0200)]
RoCoN: fix mixed use of calibrated and raw IRC for phases commutator.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include optional support for BLDC/PMSM modified to run without HAL.
Pavel Pisa [Sat, 31 May 2014 13:05:44 +0000 (15:05 +0200)]
RoCoN: include optional support for BLDC/PMSM modified to run without HAL.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: keep optional support for older version of LX_MASTER.
Pavel Pisa [Sat, 31 May 2014 12:54:03 +0000 (14:54 +0200)]
RoCoN: keep optional support for older version of LX_MASTER.

This allows to test software against older version
because actual version does not work on my board.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include skeleton of stepper motor control based on PiKRON's VLP1 project.
Pavel Pisa [Sat, 31 May 2014 09:45:41 +0000 (11:45 +0200)]
RoCoN: include skeleton of stepper motor control based on PiKRON's VLP1 project.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include command for phase alignment to index processing.
Pavel Pisa [Sat, 31 May 2014 09:43:57 +0000 (11:43 +0200)]
RoCoN: include command for phase alignment to index processing.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: new file for application specific commands and sqrtll tests added.
Pavel Pisa [Sat, 31 May 2014 08:37:32 +0000 (10:37 +0200)]
RoCoN: new file for application specific commands and sqrtll tests added.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: correct dprint periodic debug status printing.
Pavel Pisa [Fri, 30 May 2014 20:43:07 +0000 (22:43 +0200)]
RoCoN: correct dprint periodic debug status printing.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoLX Master watchdog implemented
Martin Meloun [Fri, 30 May 2014 15:50:26 +0000 (17:50 +0200)]
LX Master watchdog implemented

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoFix typo in IRC5 register address base
Martin Meloun [Fri, 30 May 2014 14:08:39 +0000 (16:08 +0200)]
Fix typo in IRC5 register address base

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoAdd a bit to IRC register storing current index wire state
Martin Meloun [Fri, 30 May 2014 14:08:17 +0000 (16:08 +0200)]
Add a bit to IRC register storing current index wire state

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoFix LX Master transmission, update PXMC for new structure
Martin Meloun [Fri, 30 May 2014 12:39:56 +0000 (14:39 +0200)]
Fix LX Master transmission, update PXMC for new structure

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoRemove unintentionally pushed debug messages
Martin Meloun [Fri, 30 May 2014 12:39:28 +0000 (14:39 +0200)]
Remove unintentionally pushed debug messages

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoUpdate LX Master transmitter structure layout
Martin Meloun [Fri, 30 May 2014 11:42:54 +0000 (13:42 +0200)]
Update LX Master transmitter structure layout

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoUpdate LX PWR communication
Martin Meloun [Thu, 29 May 2014 15:59:25 +0000 (17:59 +0200)]
Update LX PWR communication

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoRoCoN: initial version of PMSM phase alignment command.
Pavel Pisa [Fri, 30 May 2014 11:23:47 +0000 (13:23 +0200)]
RoCoN: initial version of PMSM phase alignment command.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: introduce configurable periodic status print to serial line.
Pavel Pisa [Fri, 30 May 2014 11:01:25 +0000 (13:01 +0200)]
RoCoN: introduce configurable periodic status print to serial line.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: reintroduce back option to send commands over serial line.
Pavel Pisa [Fri, 30 May 2014 10:12:18 +0000 (12:12 +0200)]
RoCoN: reintroduce back option to send commands over serial line.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: PWM output for simple 3 phase BLDC/PMSM motors control.
Pavel Pisa [Thu, 29 May 2014 22:35:01 +0000 (00:35 +0200)]
RoCoN: PWM output for simple 3 phase BLDC/PMSM motors control.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: integrate coordinated movements support and commands.
Pavel Pisa [Thu, 29 May 2014 21:27:38 +0000 (23:27 +0200)]
RoCoN: integrate coordinated movements support and commands.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: include square root routine for 64-bit input required for coordinated movements.
Pavel Pisa [Thu, 29 May 2014 21:21:57 +0000 (23:21 +0200)]
RoCoN: include square root routine for 64-bit input required for coordinated movements.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: complete MARS-8 compatible hard-home support.
Pavel Pisa [Thu, 29 May 2014 10:55:30 +0000 (12:55 +0200)]
RoCoN: complete MARS-8 compatible hard-home support.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: correct simple mark based hard home to really work.
Pavel Pisa [Tue, 27 May 2014 18:09:54 +0000 (20:09 +0200)]
RoCoN: correct simple mark based hard home to really work.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: extended to actual 8x IRC/axes design and lxpwr master initialization added.
Pavel Pisa [Tue, 27 May 2014 17:42:02 +0000 (19:42 +0200)]
RoCoN: extended to actual 8x IRC/axes design and lxpwr master initialization added.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: copy of PXMC basic hard-home routine adapted for FPGA based system.
Pavel Pisa [Tue, 27 May 2014 16:54:54 +0000 (18:54 +0200)]
RoCoN: copy of PXMC basic hard-home routine adapted for FPGA based system.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: postpone PXMC initialization until FPGA initialization is finished.
Pavel Pisa [Tue, 27 May 2014 15:09:41 +0000 (17:09 +0200)]
RoCoN: postpone PXMC initialization until FPGA initialization is finished.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoMerge 8x IRC support from origin/master branch into bluebot branch.
Pavel Pisa [Tue, 27 May 2014 14:21:17 +0000 (16:21 +0200)]
Merge 8x IRC support from origin/master branch into bluebot branch.

Conflicts:
sw/app/rocon/appl_main.c

Changes required for sycesfull build in:
sw/app/rocon/appl_pxmc.c

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoSupport 8 IRCs, refactorization (IRC and LXMaster registers and wiring)
Martin Meloun [Tue, 27 May 2014 13:23:52 +0000 (15:23 +0200)]
Support 8 IRCs, refactorization (IRC and LXMaster registers and wiring)

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoRoCoN: configuration for 4x DC motor.
Pavel Pisa [Sat, 24 May 2014 21:39:36 +0000 (23:39 +0200)]
RoCoN: configuration for 4x DC motor.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: provide PWM output for DC motor configuration.
Pavel Pisa [Sat, 24 May 2014 21:28:03 +0000 (23:28 +0200)]
RoCoN: provide PWM output for DC motor configuration.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: IRC position read.
Pavel Pisa [Sat, 24 May 2014 21:23:53 +0000 (23:23 +0200)]
RoCoN: IRC position read.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoRoCoN: FPGA access has to be initialized before PXMC initialization.
Pavel Pisa [Sat, 24 May 2014 21:22:24 +0000 (23:22 +0200)]
RoCoN: FPGA access has to be initialized before PXMC initialization.

The actual change is still incorrect, because FPGA
is not programmed before PXMC start. But if LPC external
interface is not setup then whole application blocks.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoCleanup (whitespace, etc.)
Martin Meloun [Fri, 23 May 2014 17:42:11 +0000 (19:42 +0200)]
Cleanup (whitespace, etc.)

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoTumbl submodule updated
Martin Meloun [Fri, 23 May 2014 17:41:09 +0000 (19:41 +0200)]
Tumbl submodule updated

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoLX Master MOSI and SYNC hold time after clock increased
Martin Meloun [Fri, 23 May 2014 17:40:18 +0000 (19:40 +0200)]
LX Master MOSI and SYNC hold time after clock increased

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoLX Master, usb command support, fixed SYNC and CRC last bit, improved design
Martin Meloun [Fri, 23 May 2014 17:38:40 +0000 (19:38 +0200)]
LX Master, usb command support, fixed SYNC and CRC last bit, improved design

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoIRC inputs pin changed to PULLUP
Martin Meloun [Fri, 23 May 2014 17:36:14 +0000 (19:36 +0200)]
IRC inputs pin changed to PULLUP

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoIRC coprocesor, change to generic, index to user, usb commands update
Martin Meloun [Fri, 23 May 2014 17:35:14 +0000 (19:35 +0200)]
IRC coprocesor, change to generic, index to user, usb commands update

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoMultiple patches
Martin Meloun [Sun, 11 May 2014 21:43:17 +0000 (23:43 +0200)]
Multiple patches

1) USB sendhex forked due to changes (patch included)
2) Synthesis profiling for HW
3) Added LX master
4) Calbration -> Measuerement
5) Master CPU bus is 50 MHz and wired to Tumbl external bus,
   fixes in wiring
6) Cleanups
7) Other crap I forgot in the meantime :-)

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoIRC coprocessor with muxed access between Master CPU and Tumbl
Martin Meloun [Wed, 4 Dec 2013 00:20:13 +0000 (01:20 +0100)]
IRC coprocessor with muxed access between Master CPU and Tumbl

10 years agoMajor refactorization in hw
Martin Meloun [Wed, 2 Oct 2013 10:01:09 +0000 (12:01 +0200)]
Major refactorization in hw

10 years agoImprove tumbl, tweak xst settings for more optimal synthesis
Martin Meloun [Mon, 30 Sep 2013 12:27:45 +0000 (14:27 +0200)]
Improve tumbl, tweak xst settings for more optimal synthesis

10 years agoKeep up with tumbl update (conditional execution)
Martin Meloun [Wed, 25 Sep 2013 13:47:36 +0000 (15:47 +0200)]
Keep up with tumbl update (conditional execution)

10 years agoPut up with tumbl changes and custom binutils / gcc / newlib
Martin Meloun [Tue, 24 Sep 2013 15:31:38 +0000 (17:31 +0200)]
Put up with tumbl changes and custom binutils / gcc / newlib

10 years agoCheckout submodules to latest commits
Martin Meloun [Wed, 18 Sep 2013 14:24:33 +0000 (16:24 +0200)]
Checkout submodules to latest commits

10 years agoUpdate with Tumbl firmware compilation
Martin Meloun [Wed, 18 Sep 2013 14:23:10 +0000 (16:23 +0200)]
Update with Tumbl firmware compilation

10 years agoUpdate software for Tumbl interaction and debugging
Martin Meloun [Wed, 18 Sep 2013 14:22:52 +0000 (16:22 +0200)]
Update software for Tumbl interaction and debugging

10 years agoMultiple changes in FPGA, include Tumbl coprocessor
Martin Meloun [Wed, 18 Sep 2013 14:18:44 +0000 (16:18 +0200)]
Multiple changes in FPGA, include Tumbl coprocessor

- remove deprecated control bram
- remove testing bcd counter
- fix IRC indexing reacting on index level
- update ucf file
- Tumbl: add sumbodule
- Tumbl: add lx-rocon implementation for Spartan6
- Tumbl: add primitive firmware (requires MicroBlaze binutils and gcc to compile)
- do not use coregen, infer the bram or use primitives
- Master CPU bus: now on 100 MHz instead of 72 MHz
- Master CPU bus: rd / bls is async and filtered

10 years agoFPGA: IRC - dff sampler shouldn't have reset
Martin Meloun [Fri, 30 Aug 2013 17:06:13 +0000 (19:06 +0200)]
FPGA: IRC - dff sampler shouldn't have reset

10 years agoFPGA: Improvements & Fixes
Martin Meloun [Fri, 30 Aug 2013 16:35:10 +0000 (18:35 +0200)]
FPGA: Improvements & Fixes

1) Fix hazardous states when issuing reset (and derps too)
2) Implement calibration registers for reading and writing
   on the CPU memory bus
3) bus_id register removed, became calibration register
   and implemented properly
4) Implement BCD properly
5) Fix IRC modules (correct indexing)
6) Update testbench to simulate more events

In detail

dff: Fix reset
bcd: Improve implementation
calibration: Added registers for read / write with delay secured
  to be longer than for normal transactions (held by extra cycle).
  These registers are then used for normal operation. Note that the bus
  is synchronous to the CPU / EMC!
irc: Fix reset (hold the asynchronous event by one more cycle to prevent
  accounting milions of units based on unstability of the output) and
  fixed indexing (does not delay by one cycle)
testbenches: Mostly fixed reset polarity, top module has extra transactions
  for the simulation

10 years agoRemove deprecated config
Martin Meloun [Mon, 26 Aug 2013 10:47:36 +0000 (12:47 +0200)]
Remove deprecated config

10 years agoImplement reset properly with correct polarity inside the modules
Martin Meloun [Mon, 26 Aug 2013 10:46:59 +0000 (12:46 +0200)]
Implement reset properly with correct polarity inside the modules

10 years agoUpdate top level Makefile
Martin Meloun [Sun, 25 Aug 2013 20:49:55 +0000 (22:49 +0200)]
Update top level Makefile

Separated flashing and running commands. Added commands to configure
FPGA.

10 years agoImplement interfaces for FPGA
Martin Meloun [Sun, 25 Aug 2013 20:48:28 +0000 (22:48 +0200)]
Implement interfaces for FPGA

Implemented USB_VENDOR_CALL, used during configuration of the FPGA device.
Implmented FPGA configuration and EMC initialization. At this moment, EMC uses
the longest delays and is not calibrated for performance.

10 years agoInclude USB loader headers during build
Martin Meloun [Sun, 25 Aug 2013 20:48:13 +0000 (22:48 +0200)]
Include USB loader headers during build

10 years agoFPGA: Bugfixes, custom packaging and added testing modules
Martin Meloun [Sun, 25 Aug 2013 20:44:51 +0000 (22:44 +0200)]
FPGA: Bugfixes, custom packaging and added testing modules

1) Bugfixes all over the place from initial testing,
   especially on the memory bus
2) Use CLKOUT as clock source by default (72 MHz)
3) Add packaging for SelectMAP configuration interface
4) Add some more testing modules (BCD and other ID register)

10 years agoUpdate top level Makefile, add installation commands
Martin Meloun [Thu, 22 Aug 2013 14:48:22 +0000 (16:48 +0200)]
Update top level Makefile, add installation commands

Please not that top level Makefile uses its own commands for installation.

10 years agoAdd LPC21ISP to host
Martin Meloun [Thu, 22 Aug 2013 14:08:50 +0000 (16:08 +0200)]
Add LPC21ISP to host

10 years agoFix derp
Martin Meloun [Thu, 22 Aug 2013 09:22:03 +0000 (11:22 +0200)]
Fix derp

10 years agoImport ulboot build and dependencies
Martin Meloun [Thu, 22 Aug 2013 09:18:47 +0000 (11:18 +0200)]
Import ulboot build and dependencies

10 years agoAdd top level makefile
Martin Meloun [Wed, 21 Aug 2013 18:00:28 +0000 (20:00 +0200)]
Add top level makefile

10 years agoFix host build system
Martin Meloun [Wed, 21 Aug 2013 15:33:22 +0000 (17:33 +0200)]
Fix host build system

10 years agoFix PXMC symlink
Martin Meloun [Wed, 21 Aug 2013 14:56:35 +0000 (16:56 +0200)]
Fix PXMC symlink

10 years agoIntegrate host binaries with OCERA framework
Martin Meloun [Wed, 21 Aug 2013 13:29:55 +0000 (15:29 +0200)]
Integrate host binaries with OCERA framework

10 years agoAdd ulan-app gitmodule
Martin Meloun [Wed, 21 Aug 2013 13:25:09 +0000 (15:25 +0200)]
Add ulan-app gitmodule

10 years agoCheckout master branch on sysless
Martin Meloun [Wed, 21 Aug 2013 12:19:32 +0000 (14:19 +0200)]
Checkout master branch on sysless

10 years agoMove submodules to root directory and fix symlinks
Martin Meloun [Wed, 21 Aug 2013 12:12:11 +0000 (14:12 +0200)]
Move submodules to root directory and fix symlinks

10 years agoApply fix for Spartan6 errata (9k block ram initialization)
Martin Meloun [Sun, 18 Aug 2013 19:05:30 +0000 (21:05 +0200)]
Apply fix for Spartan6 errata (9k block ram initialization)

10 years agoGenerate bin file for custom configuration
Martin Meloun [Sun, 18 Aug 2013 17:21:19 +0000 (19:21 +0200)]
Generate bin file for custom configuration

10 years agoAdd ID register to memory bus
Martin Meloun [Sun, 18 Aug 2013 16:34:42 +0000 (18:34 +0200)]
Add ID register to memory bus

It is used to verify READ from the FPGA memory controlling unit.