]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/lx-rocon.git/log
fpga/lx-cpu1/lx-rocon.git
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>
10 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.

10 years agoAdd FPGA sources with Makefile
Martin Meloun [Sun, 18 Aug 2013 11:19:56 +0000 (13:19 +0200)]
Add FPGA sources with Makefile

Requires installed Xilinx ISE and it's build tools in search directory. Includes
sources for testbenches and doesn't include project file for Xilinx ISE.

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoBetter hack for EP1 RX
Martin Meloun [Tue, 13 Aug 2013 14:19:24 +0000 (16:19 +0200)]
Better hack for EP1 RX

Clean solution is more complicated (also mess in sysless) and this will do for now.

10 years agoUse USB for cmdproc and UART for debugging
Martin Meloun [Fri, 9 Aug 2013 22:19:51 +0000 (00:19 +0200)]
Use USB for cmdproc and UART for debugging

Cmdproc (partly hackishly) is set on bulk EP1. UART is now freed for debugging. Host application has been updated.

10 years agoFix for host send command application
Martin Meloun [Fri, 9 Aug 2013 16:33:01 +0000 (18:33 +0200)]
Fix for host send command application

10 years agoA simple host application to talk to ROCON through USB
Martin Meloun [Fri, 9 Aug 2013 15:41:33 +0000 (17:41 +0200)]
A simple host application to talk to ROCON through USB

Currently not integrated with OCERA framework, link with libusb.

10 years agoUSB: cleanup and configuration for bulk (echoes packet back)
Martin Meloun [Fri, 9 Aug 2013 15:37:39 +0000 (17:37 +0200)]
USB: cleanup and configuration for bulk (echoes packet back)

10 years agoSome cleanup
Martin Meloun [Thu, 8 Aug 2013 08:18:18 +0000 (10:18 +0200)]
Some cleanup

10 years agoCheckout submodules to latest commits
Martin Meloun [Wed, 7 Aug 2013 10:15:13 +0000 (12:15 +0200)]
Checkout submodules to latest commits

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoUpdate ulut and sysless submodules URLs after SF.net update to Allura platform.
Pavel Pisa [Tue, 25 Jun 2013 14:00:07 +0000 (16:00 +0200)]
Update ulut and sysless submodules URLs after SF.net update to Allura platform.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoSetup "sw/doc" directory to allow build documentation.
Pavel Pisa [Sun, 13 Jan 2013 21:13:36 +0000 (22:13 +0100)]
Setup "sw/doc" directory to allow build documentation.

The generated documentation is stored in HTML and PDF
formats is saved into "sw/_compiled/doc" directory.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: Include SDRAM test into command processor.
Pavel Pisa [Fri, 11 Jan 2013 01:25:28 +0000 (02:25 +0100)]
RoCoN: Include SDRAM test into command processor.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: Inform about running code from SDRAM during startup.
Pavel Pisa [Fri, 11 Jan 2013 01:17:16 +0000 (02:17 +0100)]
RoCoN: Inform about running code from SDRAM during startup.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: Configure USB to be included in RoCoN application.
Pavel Pisa [Fri, 11 Jan 2013 01:14:37 +0000 (02:14 +0100)]
RoCoN: Configure USB to be included in RoCoN application.

This allows to request board reset over USB even
when application runs. When board is reset it goes through
bootblock and can be stop there and new application version
flashed.

USB to uLAN converter functionality is disabled.
It has no use for robotic (controller at lest now)
and ul_drv submodule is not included to the build.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoLower number of warnings and declare variable for serial number unconditionally.
Pavel Pisa [Fri, 11 Jan 2013 01:08:50 +0000 (02:08 +0100)]
Lower number of warnings and declare variable for serial number unconditionally.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: reserve USB product ID for RoCoN from PiKRON acquired/bought pool.
Pavel Pisa [Fri, 11 Jan 2013 00:53:05 +0000 (01:53 +0100)]
RoCoN: reserve USB product ID for RoCoN from PiKRON acquired/bought pool.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: define PXMC and application periodic activation.
Pavel Pisa [Fri, 11 Jan 2013 00:45:14 +0000 (01:45 +0100)]
RoCoN: define PXMC and application periodic activation.

The system clock interrupt runs at 1kHz (SYS_TIMER_HZ).
The PXMC runs at same frequency. Slow(er) activities
are run at 100 Hz (APPL_SLOW_SFI_USEC is 10000 usec).

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN: Extend number of the supported axes to 4.
Pavel Pisa [Fri, 11 Jan 2013 00:33:04 +0000 (01:33 +0100)]
RoCoN: Extend number of the supported axes to 4.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agosysless submodule updated.
Pavel Pisa [Fri, 11 Jan 2013 00:31:48 +0000 (01:31 +0100)]
sysless submodule updated.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoPrepare build-able skeleton for RoCoN application.
Pavel Pisa [Mon, 7 Jan 2013 11:54:29 +0000 (12:54 +0100)]
Prepare build-able skeleton for RoCoN application.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
11 years agoRoCoN project started.
Pavel Pisa [Sun, 6 Jan 2013 23:20:33 +0000 (00:20 +0100)]
RoCoN project started.

The aim of this project is to build robotic
motion control system based on LX_CPU1 board
designed by Petr Porazil. Board combines
NXP LPC1788, Xilinx Spartan 6 FPGA and 32 MB
of SDRAM.

Included template based on PiKRON embedded projects
to allow build of sysless and other libraries.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>