5 ms·
Your description of inter-core communication in the GA144 is on the money. In addition to the challenge of mapping your problem to the grid, you have the intere
by RodgerTheGreat 15y ago
Your description of inter-core communication in the GA144 is on the money. In addition to the challenge of mapping your problem to the grid, you have the interesting problem of initializing all those cores with their programs, since it's only possible to do serial communication with a few cores on the edges of the chip. In one of his recent "fireside chats", Chuck discussed how he first fills the chip with a zigzag pattern of of programs that act as a pipeline and then pumps the desired binary along, replacing the scaffolding backwards toward the serial port he's using. It reminds me a bit of the design of biological systems- not only do you have to write a program, you have to make it self-assemble.
If anybody's interested in the GA144, GreenArrays recently put up a series of free self-paced courses about the architecture: http://school.arrayforth.com/ http://school.arrayforth.com/
- msutherl 15y agoThat sounds awesome – reminds me of cellular automata – but also, um, I just can't see Joe Engineer figuring that out. My first thought when I started researching Green Arrays was that this was an amazing idea that I would love to see take off, but their UX and marketing will really get in the way. Not like that have much competition though – the entire microcontroller world is hopelessly obscure with the exception of Arduino and all of the projects that it inspired.
- RodgerTheGreat 15y agoFortunately Chuck's already done the nasty parts and you can (presumably) leverage his upload code if you use GreenArrays' tools, but there's always the possibility that your code will require some very specific sequence of node initialization and you'll have to wade in and do it manually. I agree that this tech will probably never be mainstream. If I had an unlimited supply of free time I would be very tempted to develop some third-party devtools for GA chips- I enjoy programming in Forth and I could get used to the F18 instruction set, but using a custom keyboard layout and ditching my text editors and source control systems in favor of a block editor is pretty hard to swallow.
- dkersten 15y agothe entire microcontroller world is hopelessly obscure with the exception of Arduino and all of the projects that it inspired I dunno, it doesn't seem that bad to me. Cortex-M microcontrollers use the ARM instruction set and seem to be gaining ground. I've personally used PIC24 (the 16bit PIC microcontrollers from Microchip) and various 8bit Atmel ones without using Arduino. The 8bit PIC16 still seems reasonably popular too. Certainly none are as popular or accessible to beginners than Arduino, but is it really hopelessly obscure? Hell, if I can get started with PIC24, then surely anyone can! (Though I do admit I've started doing prototyping on Arduino lately because the wealth of sample code saves tons of time and headaches, while before the PIC24 was my go-to microcontroller. I have used the AT90USB162 and some Atmega micros for some work too and will probably use them much more in the future).
- gruseom 15y agoHow do the boards compose? Is communication between the edge cores of two internal boards of a grid different from communication between two cores on the same board?
- RodgerTheGreat 15y agoI don't know as much about that, but based on the whitepapers[1] the GA144s aren't designed to tile. They have a whole bunch of different kinds of peripherals attached to different nodes like analog I/O, busses for RAM controllers and so on. The GA144 is just a network of tesselated F18 cores, though, so if there was some kind of application available that could use a larger grid of them it might be possible to work with GreenArrays to develop the silicon- they wouldn't have to start over from scratch. [1]http://www.greenarraychips.com/home/documents/greg/PB001-100503-GA144-1-10.pdf http://www.greenarraychips.com/home/documents/greg/PB001-100...