BARE BONES PROPELLER UPDATE V1.4
THE MOST ESSENTIAL PROPELLER CHIP CIRCUIT
BARE BONES is one of our favorite Propeller chip machines and continuing projects. In under ten minutes, it's possible to whip up this circuit and run the virtual LED programmed in Spin, blinking it on and off, watching it on the serial terminal.
This is the latest updated schematic to construct the Bare Bones Propeller circuit with the mentioned improvements. It has the main chip protection circuit added to the schematic for crisscross wiring and decoupling capacitors, ensuring a greater longevity chip.
ADDITIONS
The main schematic addition is one resistor to activate the BOEn disable circuit so that the Propeller can operate on less voltage, at or below the 2.7 volt reset limit. This allows experimenting with solar cells, smaller batteries with less voltage and other supply circuits. It also allows a battery to function at increased discharge levels and the Propeller chip can boot at a lower voltage.
VERSION
This updated Bare Bones Schematic is currently at version 1.4 and is subject to change without notice. It replaces versions 1.0, 1.1, 1.2, and 1.3. Use the blog's search feature to find any future changes. The suggestions from this thread, and some from another thread are now incorporated into the circuit to maximize Propeller chip performance, reliability, and facilitate ease of assembly for beginners.
LOWER POWER
The circuit allows lower power operations, mainly 3-volts with two (1.5 volts each) AA batteries, and experiments at lower voltages. Bare Bones is a good reference circuit and starting point for many projects. By itself, Bare Bones is considered to be a simple machine project with provided software on the schematic and the ability to communicate with a serial terminal, providing virtual representations.
PROPELLER TOOL SOFTWARE
http://www.parallax.com/downloads/propeller-tool-software
BARE BONES CODE
With no crystal needed, the program runs in rcfast (~12 mHz) and at 1200 baud to blink a serial terminal LED on and off. Hosted at the Parallax Forum, the link for download is found below or simply cut and paste the code into BST or the Propeller Tool software.
' Terminal LED Test Program http://humanoidolabs.blogspot.com/
' Author: Humanoido (c) 07.18.2013 Terms of Use MIT License
' Runs on Bare Bones Propeller
' Blinks one serial LED
' Boot to RCFAST (~12MHz)
OBJ
PST : "Parallax Serial Terminal"
PUB main
pst.Start(1200)
pst.str (string(13,"Serial LCD Demo",13,"Blink LED On and Off",13))
repeat
pst.str (string("LED ON *",13))
waitcnt(clkfreq/2 + cnt)
pst.str (string("LED OFF o",13))
waitcnt(clkfreq/2 + cnt)
BIG BRAIN made by Humanoido is a giant intelligent AI machine. Over twenty years in the making, living and sentient, approaching one trillion processors/constructs. Join us in the exciting adventure as it continues to evolve!
Showing posts with label prop. Show all posts
Showing posts with label prop. Show all posts
Thursday, November 7, 2013
Saturday, October 26, 2013
Brain Cortex Update Part 6
BRAIN CORTEX
PROJECT
UPDATE
PART 6
SUNDAY OCTOBER 27 2013
IN THIS EDITION!
* BATTERY SIZE
* BATTERY COMPOSITION
* JAR SIZE
* MODULE ARRANGEMENT
* BATTERY CAPACITY CHART
* BOE DECISION
JOIN US AS WE BUILD a real live electric brain cortex. The cortex lives in a tiny home inside a hermetically sealed jar, eating and dining on continuous power, and can talk to the outside world. You can make the cortex your friend and teach it about life. It will learn from you and maybe carry on some your knowledge from generation to generation.
To assure uninterrupted flow of energy to the hungry and continuously dining Cortex, the use of tiny and weak AA batteries was dropped. In place, a series of more massive supply energy capable D size cells are now in use. A single D cell provides 12,000 mAh while the AA cell is only 2,700. The use of four D size cells wired to give 3 volts to the Propeller powered Brain Cortex will supply a full 24,000 mAh.
2) As a result of switching to more massive D size cells, the one liter jar is no longer large enough. The project is examining a 3 liter jar for current use.
3) The use of super capacitors is currently dropped in the overall design due to their unavailability.
4) The arrangement of modules inside the brain is paramount. The solar cells must be at the front. Two sets of large batteries cling to 90 degree opposing sides. The back and bottom are being examined for non-obstructed attachment without battery insertion and removal interference. Switching to jars larger than one liter, such as the three liter jar, has opened up possibilities for other module arrangements.
5) It's noted that other composition batteries cells don't provide the full 1.5 volts and combining two batteries would be insufficient to operate the Propeller chip for the defined term. For this reason, and for the common availability, alkaline batteries were selected.
6) A decision is made to switch
from BOE ON to BOE OFF. With the BOE Brown Out Enable switch off, the cortex will operate on lower
power as the battery has less voltage during the night. With BOE ON, when the voltage supply
approaches 2.7 volts, a Propeller reset will occur. If at all possible, a reset condition is exactly what we want to avoid. For wiring, see the link below.
http://humanoidolabs.blogspot.tw/2013/08/propeller-simple-spin-board-part-6.html
http://humanoidolabs.blogspot.tw/2013/07/propeller-simple-spin-board-part-2.html
I can't seem to disable brown out detection, if I connect BOEn to Vdd even at 3.3v the Prop won't do anything.
Put an external pullup on RST (a 220 ohm resistor from RST to VDD).
When BOE Brown Out Enable is grounded, the Propeller chip has an internal pullup activated. When BOE is held high, the internal pullup is not active, and an external pullup is required on RST to restore functioning.
TYPICAL CAPACITY OF BATTERIES (UNITS IN MAH)
AAA size, 1,200 alkaline, 540 carbon–zinc, 800–1,000 NiMH
AA, 2,700 alkaline, 1,100 carbon–zinc, 3,000 Li–FeS2, 1,700–2900 NiMH, 600–1000 NiCd
C BATTERY, 8,000 alkaline, 3,800 carbon–zinc, 4,500–6,000 NiMH
D BATTERY, 12,000 alkaline, 8,000 carbon–zinc, 2,200–12,000 NiMH
9 VOLT, 565 alkaline, 400 carbon‑zinc, 1,200 lithium, 175–300 NiMH
120 NiCd, 500 lithium polymer rechargeable, 580 mercury, obsolete
Brain Cortex Index Part 16
PROJECT
UPDATE
PART 6
SUNDAY OCTOBER 27 2013
IN THIS EDITION!
* BATTERY SIZE
* BATTERY COMPOSITION
* JAR SIZE
* MODULE ARRANGEMENT
* BATTERY CAPACITY CHART
* BOE DECISION
JOIN US AS WE BUILD a real live electric brain cortex. The cortex lives in a tiny home inside a hermetically sealed jar, eating and dining on continuous power, and can talk to the outside world. You can make the cortex your friend and teach it about life. It will learn from you and maybe carry on some your knowledge from generation to generation.
To assure uninterrupted flow of energy to the hungry and continuously dining Cortex, the use of tiny and weak AA batteries was dropped. In place, a series of more massive supply energy capable D size cells are now in use. A single D cell provides 12,000 mAh while the AA cell is only 2,700. The use of four D size cells wired to give 3 volts to the Propeller powered Brain Cortex will supply a full 24,000 mAh.
2) As a result of switching to more massive D size cells, the one liter jar is no longer large enough. The project is examining a 3 liter jar for current use.
3) The use of super capacitors is currently dropped in the overall design due to their unavailability.
4) The arrangement of modules inside the brain is paramount. The solar cells must be at the front. Two sets of large batteries cling to 90 degree opposing sides. The back and bottom are being examined for non-obstructed attachment without battery insertion and removal interference. Switching to jars larger than one liter, such as the three liter jar, has opened up possibilities for other module arrangements.
5) It's noted that other composition batteries cells don't provide the full 1.5 volts and combining two batteries would be insufficient to operate the Propeller chip for the defined term. For this reason, and for the common availability, alkaline batteries were selected.
6) A decision is made to switch
from BOE ON to BOE OFF. With the BOE Brown Out Enable switch off, the cortex will operate on lower
power as the battery has less voltage during the night. With BOE ON, when the voltage supply
approaches 2.7 volts, a Propeller reset will occur. If at all possible, a reset condition is exactly what we want to avoid. For wiring, see the link below.http://humanoidolabs.blogspot.tw/2013/08/propeller-simple-spin-board-part-6.html
http://humanoidolabs.blogspot.tw/2013/07/propeller-simple-spin-board-part-2.html
DISABLE THE BROWNOUT DETECTOR
In
this first modification to the Propeller Simple Spin Board, the
connection from BOEn to Ground is removed. Insert a new connection
between BOEn and Vdd. This will disable the brownout detector by
connecting it to high, and prevent the board from resetting at 2.7 volts
or less. (not shown on schematic) I can't seem to disable brown out detection, if I connect BOEn to Vdd even at 3.3v the Prop won't do anything.
Put an external pullup on RST (a 220 ohm resistor from RST to VDD).
When BOE Brown Out Enable is grounded, the Propeller chip has an internal pullup activated. When BOE is held high, the internal pullup is not active, and an external pullup is required on RST to restore functioning.
TYPICAL CAPACITY OF BATTERIES (UNITS IN MAH)
AAA size, 1,200 alkaline, 540 carbon–zinc, 800–1,000 NiMH
AA, 2,700 alkaline, 1,100 carbon–zinc, 3,000 Li–FeS2, 1,700–2900 NiMH, 600–1000 NiCd
C BATTERY, 8,000 alkaline, 3,800 carbon–zinc, 4,500–6,000 NiMH
D BATTERY, 12,000 alkaline, 8,000 carbon–zinc, 2,200–12,000 NiMH
9 VOLT, 565 alkaline, 400 carbon‑zinc, 1,200 lithium, 175–300 NiMH
120 NiCd, 500 lithium polymer rechargeable, 580 mercury, obsolete
Brain Cortex Index Part 16
Tuesday, October 15, 2013
SuperStamp
![]() |
| 1st SuperSTAMP - marriage of Stamp & Propeller |
The SuperSTAMP is a very powerful BASIC Stamp "module" made from a Parallax BS2 Board of Education and a Propeller Proto Board. The added features and resources create added capabilities and power that go far beyond the original Stamp.
![]() |
| SuperSTAMP sets on the green work pad |
How was the SuperSTAMP born? During the 2010-2011 time period, the Big Brain project developed a Brain Stem. As it was receiving more wiring, a transformation took place. Upon completed, it became a fully functional integrated module inside the giant brain and it also became the world's first SuperSTAMP built from Big Brain technology!
PHOTO: In November of 2010, the first Brain Stem was completed and tested. Seen here it sets on the green pad for further analysis. At that time, the Brain did not exist and was only a vision in the mind's eye!
The SuperStamp was first blogged within the Parallax Forum "Fill the Big Brain" thread. It was a transformation from a working Big Brain Stem. The duality of Stamp and Propeller enabled the creation of a SuperSTAMP, much more powerful than a single stamp, more powerful than a single Propeller, with 9 cores instead of 1 or 8.
A nine core machine
Communications was developed and tested on the first Propeller positioned above the first BS2 which became known as the SuperSTAMP. The SuperSTAMP is another project developed to give maximum power to a BASIC Stamp. The SuperSTAMP mates to the PPPB and consists of both Tx and Rx programs along a common protected BUS. It's essentially a BASIC Stamp enhanced with the addition of one propeller chip that adds eight additional cores.
Wiring Diagram for a SuperSTAMP "Brain Stem." Another napkin sketch, the Stem consists of a Propeller board (PPPB) and a BASIC Stamp 2 Board (BOE). Test wiring is straightforward.
Robotic Brain Stem Discovery Thread
http://forums.parallax.com/showthrea...611#post955611
Overview
The Brain Stem is one of the most important parts of the Brain. It resides below the Brain Base. The Stem passes signals like a nerve center for reflex, muscle and primarily mobility control. It harnesses mobility software to give the brain motion control.
Compatibility
The Brain Stem has another purpose. It serves as a commonality compatibility interface with other processor-based robots, for example, Parallax robots using BASIC Stamps. It is also compatible with Propeller-based robots, including the Boe-Bot, SumoBot, S2, Stingray, QuadRover, and is an ideal candidate for the Robot Base Full Kit.
SuperSTAMP
Communications was developed and tested on the first Propeller above the first BS2 which is known as the SuperSTAMP. The SuperSTAMP is another project developed to give maximum power to a BASIC Stamp. The SuperSTAMP mates to the PPPB and consists of both Tx and Rx programs along a common protected BUS.
COMMUNICATIONS
Revealing SUPERSTAMP test code
This chronicles the development of test code, phase I, for the Brain Stem. Note, the Brain Stem is made up from two boards, a BOE and a PPPB.
Wiring
Important wiring note. The schematic shows a Propeller to Stamp connection but does not show the lines running from Vss to Vss. Note that Vdd to Vdd is not implemented as the Propeller is a 3.1-volt device and the Stamp is a 5-volt device. The actual feed is from the Stamp regulator to gain the 5-volts and from the external power supply to gain the 3.1 volts.
Programming Code
Brain Stem code consists of one folder with three files.
PROP-BS2 LEVEL5.bs2
PROP-BS2-LEVEL5.spin
BS2_Functions.spin
Load the first program into the BS2. This will act as the receiver. Load the second "Propeller" program and run it. This is the transmitter.
Testing
In the test, the Propeller is continually talking to the Stamp and the Stamp is listening. The Stamp code makes use of the the Debug screen for output.
Error Detection
The code also has error detection. If the system hangs, a timeout occurs and a message is given. Following this, the loop will continue looking for the next character.
Prop to STAMP Voltage Levels
The BUS data transmission from the Prop to the Stamp is a compatible voltage level.
ORIGINAL DISCOVERY THREAD
http://forums.parallax.com/showthread.php/124495-Fill-the-Big-Brain?p=982969&viewfull=1#post982969
CODE DOWNLOAD
Monday, August 26, 2013
Robot Explorer Log 5 Propeller Pins
DETERMINE FREE PROPELLER PINS
ROBOT EXPLORER LOG 5
CURRENT CHIP PINS FREE
PROPELLER 1: 11 PINS FREE
PROPELLER 2: 7 PINS FREE
We're taking this robot to the outer reaches of the Solar System! Follow along as we construct this little explorer craft that will go down to the surface of a new world that's alien to us.
In this update, we've removed the left and right IR navigation and replaced it with Ping ultrasonic navigation. The IR took up 4 pins so now the robot has 4 extra pins on the first propeller chip.
The ambient light level detectors are removed and replaced with the more sensitive TLS230R programmable chip.
On the second Propeller chip, two light to frequency converter chips (TLS230R) are added. Each chip uses 3 pins. Propeller two will have six more pins used.
On the second Propeller, the QTI sensor will be removed due to its limited range in the specs. This will free up 3 pins.
Also removed from the Propeller 2 are two CDS ambient light sensor cells freeing up two more pins.
The reason two light to frequency chips will be used is because one is pointed up to establish a baseline reference for calibration and the second chip will point down at the ground to help estimate the type of ground surface material, based on an average of light reflectivity.
Another reason for selecting the chip: the chip is much more sensitive compared to other sensors and it can be programmed for great sensitivity level or modified. This is a desired feature for exploring the outer planets and moons which have no more lighting than Earth's twilight.
The chip is also programmable to compensate for window dust and degradation, by increasing the light level sensitivity as needed.
Again, we attempted to combine both Propeller boards into one but there was a shortage of two pins.
ROBOT EXPLORER LOG 5
CURRENT CHIP PINS FREE
PROPELLER 1: 11 PINS FREE
PROPELLER 2: 7 PINS FREE
We're taking this robot to the outer reaches of the Solar System! Follow along as we construct this little explorer craft that will go down to the surface of a new world that's alien to us.
In this update, we've removed the left and right IR navigation and replaced it with Ping ultrasonic navigation. The IR took up 4 pins so now the robot has 4 extra pins on the first propeller chip.
The ambient light level detectors are removed and replaced with the more sensitive TLS230R programmable chip.
On the second Propeller chip, two light to frequency converter chips (TLS230R) are added. Each chip uses 3 pins. Propeller two will have six more pins used.
On the second Propeller, the QTI sensor will be removed due to its limited range in the specs. This will free up 3 pins.
Also removed from the Propeller 2 are two CDS ambient light sensor cells freeing up two more pins.
The reason two light to frequency chips will be used is because one is pointed up to establish a baseline reference for calibration and the second chip will point down at the ground to help estimate the type of ground surface material, based on an average of light reflectivity.
Another reason for selecting the chip: the chip is much more sensitive compared to other sensors and it can be programmed for great sensitivity level or modified. This is a desired feature for exploring the outer planets and moons which have no more lighting than Earth's twilight.
The chip is also programmable to compensate for window dust and degradation, by increasing the light level sensitivity as needed.
Again, we attempted to combine both Propeller boards into one but there was a shortage of two pins.
Sunday, July 28, 2013
Irony of the Retro Propeller
![]() |
| Retro machine becomes more |
It's very strange - that to become more powerful, at least in ranking and rating, the Propeller powered Big Brain had to initially take a step into yesteryear by going retro!
— When less becomes more! —
Sometimes less is more! Going retro is not a new idea (pun intended), even though the shape of today's modern processors are sometimes molded and formed into nostalgic products and projects stemming from the past. For example, the Propeller Pocket Mini Computer uses one Propeller chip to create a remarkable retro computer. But what about the Big Brain? What could possibly be gained by going retro and stepping into the past?
The idea on June 30th of 2012, was the creation and completion of a retro "Propeller chip only" machine that had supercomputer rating but only from a nostalgic past viewpoint. This was, of course as we all know now, a precursor to the Big Modern Brain, which took some time and growth to place in the actual Top 500 List of supercomputing machines.
One can take the timeline of supercomputers, divided into decades, and rate even the smallest board today in terms of speed. Range includes 1950s, 60s, 70s, 80s, 90s etc. Be prepared to calculate speed ranging from flops (floating point operations per second), through the gradual progression of faster and faster ratings, kflops, mflops, gflops, and teraflops.
The photo, seen here in a rotated retro effect, shows the "all propeller laden" retro supercomputer machine, laced with PPPBs and giant solderless breadboards. This experimental Big Brain and retro supercomputer was a gem that led to the development of the first supertronic enhancements and continuing experiments with machines inside machines.
Sunday, June 23, 2013
Cherry Pie Tiny Super Computer Wannabe
MANUFACTURED BY HUMANOIDO LABS
CHERRY PIE: TINY SUPER COMPUTER WANNABE
It's finally here - Cherry Pie, a Tiny Super Computer Wannabe, for hobbyists and students who can't afford 55 million dollars for the real thing but want to build their own smaller working version for experimenting, learning, having fun and play.
The Cherry Pie attempts to use techniques to super-size your existing Propeller chips, multiply their "Cogs" and make a computing machine with more power, function and intrigue! Cherry Processors are less than a penny each!
INTRO & STATS
This is a cute tiny parallel platform almost like the big supercomputers on the Top 500 List. It has lots of parallel cores, multi-threaded processors, it's own fully functional real time operating system RTOS (for thousands of cherry processors) and interfaces galore for nearly every imaginable configuration (parallel, serial, full duplex, half duplex, party line, one wire, etc.). It's simple, homey, and a lot like cherry pie in likeability.
TECHNOLOGY
Cherry Pie is based on technology developed for the Spin Brain which has filtered down from the actual Big Brain that turned Supercomputer last year. These Tiny Wannabe Super Computers are fully operational, function in parallel, and have wee-tiny output monitors on each chip for experiments on a budget.
— We expect these will go like hotcakes once the schools discover they're a learning bonanza substitute for the real thing. —
— Educators state, switching to Cherry Pie <tiny super computer wannabe>, 55 million dollars or 55 dollars was an easy choice for students and the university' curriculum —
PRICING
They're almost a dime a dozen, though you'll still need to purchase from one to five Parallax Multi Core chips at about $7.99 each. But you can start with one chip and "supersize" its eight RISC cores to super computer stuffins classification, then add more chips as your wallet grows in increments of $7.99. This is about a dollar a hard core or CPU. Not bad! Throw in handful of common components from the electronic parts store and you should be ready to get started immediately! But wait! There's more! The cost of a single Cherry processor drops to less than a penny.
AMORTIZING
The amortized cost is far less. The enhanced Propeller chip rises from 8 RISC cores to a combined 1008 processors. Running five chips provides a total of 5,040 Cherry processors. As each chip is $7.99, the amortized cost per Cherry processor is only $.008 - not even a full penny per processor!
SPEED
The speed is also tiny. You'll need to pretend the actual thousand MIPs rating is thousands of times faster. But don't worry, we have several ways to load up the chips with enhancements that make this tiny machine "function" more like an actual supercomputer. With your hair flung back from hairspray and the fallout-wind of this tiny slick supercomputer wannabe, it's sure to be a win-win situation.
WANNABE
Wannabe is good - and not a bad thing, as proven by Daniel Hammer, professor of bioengineering at the University of Pennsylvania. He's reportedly working with artificial cells made from polymers, which can mimic the ease with which white blood cells travel through the body. These could deliver drugs directly where they're needed, making it easier and safer to fight off certain diseases, including cancer.
ADVANTAGES
Cherry Pie has advantages. It doesn't need the support team of a lunar landing. It doesn't need a large room or entire building to hold it. It doesn't result in a monthly electric bill more costly than purchasing a house.
LINKS
SPIN BRAIN
BIG BRAIN
PARALLAX
PROPELLER CHIP P8x32A-D40
PROP PLUG 32201
to be continued
CHERRY PIE: TINY SUPER COMPUTER WANNABE
It's finally here - Cherry Pie, a Tiny Super Computer Wannabe, for hobbyists and students who can't afford 55 million dollars for the real thing but want to build their own smaller working version for experimenting, learning, having fun and play.
The Cherry Pie attempts to use techniques to super-size your existing Propeller chips, multiply their "Cogs" and make a computing machine with more power, function and intrigue! Cherry Processors are less than a penny each!
INTRO & STATS
This is a cute tiny parallel platform almost like the big supercomputers on the Top 500 List. It has lots of parallel cores, multi-threaded processors, it's own fully functional real time operating system RTOS (for thousands of cherry processors) and interfaces galore for nearly every imaginable configuration (parallel, serial, full duplex, half duplex, party line, one wire, etc.). It's simple, homey, and a lot like cherry pie in likeability.
TECHNOLOGY
Cherry Pie is based on technology developed for the Spin Brain which has filtered down from the actual Big Brain that turned Supercomputer last year. These Tiny Wannabe Super Computers are fully operational, function in parallel, and have wee-tiny output monitors on each chip for experiments on a budget.
— We expect these will go like hotcakes once the schools discover they're a learning bonanza substitute for the real thing. —
— Educators state, switching to Cherry Pie <tiny super computer wannabe>, 55 million dollars or 55 dollars was an easy choice for students and the university' curriculum —
PRICING
They're almost a dime a dozen, though you'll still need to purchase from one to five Parallax Multi Core chips at about $7.99 each. But you can start with one chip and "supersize" its eight RISC cores to super computer stuffins classification, then add more chips as your wallet grows in increments of $7.99. This is about a dollar a hard core or CPU. Not bad! Throw in handful of common components from the electronic parts store and you should be ready to get started immediately! But wait! There's more! The cost of a single Cherry processor drops to less than a penny.
AMORTIZING
The amortized cost is far less. The enhanced Propeller chip rises from 8 RISC cores to a combined 1008 processors. Running five chips provides a total of 5,040 Cherry processors. As each chip is $7.99, the amortized cost per Cherry processor is only $.008 - not even a full penny per processor!
SPEED
The speed is also tiny. You'll need to pretend the actual thousand MIPs rating is thousands of times faster. But don't worry, we have several ways to load up the chips with enhancements that make this tiny machine "function" more like an actual supercomputer. With your hair flung back from hairspray and the fallout-wind of this tiny slick supercomputer wannabe, it's sure to be a win-win situation.
WANNABE
Wannabe is good - and not a bad thing, as proven by Daniel Hammer, professor of bioengineering at the University of Pennsylvania. He's reportedly working with artificial cells made from polymers, which can mimic the ease with which white blood cells travel through the body. These could deliver drugs directly where they're needed, making it easier and safer to fight off certain diseases, including cancer.
ADVANTAGES
Cherry Pie has advantages. It doesn't need the support team of a lunar landing. It doesn't need a large room or entire building to hold it. It doesn't result in a monthly electric bill more costly than purchasing a house.
LINKS
SPIN BRAIN
BIG BRAIN
PARALLAX
PROPELLER CHIP P8x32A-D40
PROP PLUG 32201
to be continued
Friday, June 21, 2013
Propeller Mini Microcontroller
THE PROPELLER MINI
The Propeller Mini by Parallax is a tiny but powerful microcontroller computer with 8 cores and a very small footprint.
A tiny .81 x 1.52-inches
The current $24.99 cost is the same as a Proto Board, the lowest cost complete Propeller board offered by Parallax at this time. The footprint is about the same size as BASIC Stamp module.
The Propeller chip is the heart of the Big Brain Supercomputer at Humanoido Labs.
FEATURES
Propeller Mini Schematic (.pdf)
The Propeller Mini by Parallax is a tiny but powerful microcontroller computer with 8 cores and a very small footprint.
A tiny .81 x 1.52-inches
The current $24.99 cost is the same as a Proto Board, the lowest cost complete Propeller board offered by Parallax at this time. The footprint is about the same size as BASIC Stamp module.
The Propeller chip is the heart of the Big Brain Supercomputer at Humanoido Labs.
FEATURES
- Propeller P8X32A-M44 multi-core microcontroller
- 32KB EEPROM program storage
- 5V 1A, 3.3V 400 mA regulators
- Removable 5 MHz crystal
- Access to 19 digital I/O
- 3.3 VDC regulated output @ 400 mA max
- 5 VDC regulated, 600 mA max
- Voltage requirement: Regulated 6.5–12 VDC though VIN
- Dimensions: 0.81 x 1.52 in (20.5 x 38.6 mm)
- Operating temp range: -40 to +185 °F (-40 to +85 °C)
- Prop Plug #32201 is required for programming (not included)
Propeller Mini Schematic (.pdf)
Wednesday, February 6, 2013
High Speed Propeller Chips
HIGH SPEED PROPELLER CHIPS
The speed of the Parallax Propeller chip is already fast. By following the wondrous work of Master Beau Schwabe, the chip can be made amazing-blazing fast!
Beau has worked years carving out new elements for the Propeller chip, making possible transformations that the Big Brain is keen on adapting for supercomputer status.
One of these working miracles is the ability of chip to chip communication in excess of one million Bytes per second! A DIY Data Pipe can multiple this a hundred times!
BEAU SCHWABE OF PARALLAX: Here is a derivative of the high speed 8.42 Meg Baud (1.05 Million Bytes per second) Prop-to-Prop communication that I wrote some time ago. Last March there were several changes to the front end of both the Receiver and the Transmitter in the way that the handshaking took place. Before you had to make sure that the Receiver was up and running before you Transmitted... this is no longer the case, now it doesn't matter making it more user friendly. For just the average user, it's pretty straight forward... there is only one command to Send, and there is only one command to Receive.
Basic Use:
To receive, just specify the pin you want to listen on and the address of where you want the received data to go to. Remember, this transmission is designed to send large packets of data, so if your just sending a few bytes here and there, this object is probably not for you.
RX(_Pin,_DataAddress)
To Transmit, is basically the same thing with a few more parameters... you specify the pin you want to yell on, the address of where the data is coming from, How much data you want to send in longs.
TX(_Pin,_DataSamples,_DataAddress,_00, 0)
Note: the last two fields are not used in the Basic setup, they will be discussed in Advanced Use. So that's it for basic use.
Advanced Use:
The Receive is just the same as before, but it can be used as a function to return additional. information from the Server.
Command := RX(_Pin,_DataAddress)
This will receive data just as before and place it in the assigned address, but Command contains the size of the transmitted packet, a destination offset, and a Packet Command. Organized as such...
%ssssssssssssss_aaaaaaaaaaaaaa_cccc
where:
s = 14-Bit Packet Size
a = 14-Bit Destination Offset
c = 4 Bit Command
The Packet Size is obviously useful for determining how much data you received and allows support for variable width packets. The Destination Offset is unique in the sense that the Server has some control as to where the Data will end up on the receiver. Basically this value gets added to the DataAddress that you specify on the receiver so that the incoming data is written to a location starting at the DataAddress plus the Offset. This feature allows random block writes from the Server to the Client. The 4-Bit Command is just a way for the server to pass a specific command to the receiver. It can be used for anything you want. It's up to you.
For Transmission, it's just the same as the Basic Transmission as well, except the two parameters that were Zero'd out now have some meaning.
TX(_Pin,_DataSamples,_DataAddress,_DataCommand,_Of fset)
DataCommand as just mentioned is a 4-bit command you can pass directly to the Client and can be used for anything you want.
The Offset, also just mentioned, can be used to tell the receiver to write data to another location. This is useful when you only want to update a block or section of memory on the Client.
Finally, supplied Demo programs show a round-robin approach to sending data across multiple Propellers. The Idea is that you have one buffer that every Propeller sends around the loop ... "infinitely." To prevent collisions, ALL Propellers have access to reading the entire buffer, however, and this is what makes it work... Each Propeller can only write to a specific assigned location of that buffer. This isn't exactly true, but it's a good programming practice to implement. There aren't any collisions for similar reasons that you don't have collisions from COG to COG on a single Propeller. When a Propeller reads the Buffer, he is only allowed to write to the section that he is assigned to before sending the Buffer on to the next Propeller. (Note the Demo Code has this restriction lifted and can write to any location on the Buffer... But in my description, that's how you would typically manage the data across multiple Propellers and avoid collision. It works in the Demo, because there is only one Propeller writing to the buffer) In the Ring*, you can have as many Propellers as you want, with each Propeller only having a 3-wire interface... (Ground, TX, and RX) ... I have tested up to 5 Propellers with the supplied demo code. One Propeller must be identified as the Server to initiate the data ring, but all of the other Propellers are identified as Clients. Within each Propeller regardless of Server or Client ALL Propellers have equal access to the Data Buffer. I Hope this makes sense... Enjoy!!
Note: added a slightly newer version that addresses detection of the USB plugged into the PC. This prevents unwanted resets. Check this link out for a way to control switches across multiple Propellers, i.e. for lighting
Beau Schwabe | Parallax Semiconductor IC Layout Engineer Parallax Inc. * 599 Menlo Drive * Rocklin California 95765
www.parallaxsemiconductor.com
http://forums.parallax.com/showthread.php/134641-DEMO-High-Speed-Multi-Prop-to-Prop-Communication
*Note: in the case of the Big Brain, the Ring exceeds 100 chips with 800 cogs and enhancements for nearly a million processors.
14.5 Meg Baud Upgrade Ok, beta testers... I have run this DEMO and tested over 100 Billion data Bits with no Transmission Errors over the distance of 10 feet from one Propeller to another Propeller. Here is a beta release before I place it in the object exchange. ...· Enjoy!!
http://forums.parallax.com/showthread.php/99222-Propeller-DEMO-14.5-Meg-Baud-High-Speed-Prop-to-Prop-Serial-Communication
Labels:
8.42 Meg Baud,
beau,
chips,
communications,
high,
packet,
parallax,
prop,
prop-to-prop,
propeller,
receive,
receiver,
rx,
schwabe,
send,
speed,
transmitter,
tx
Friday, December 14, 2012
Propeller Chip NG Spacecraft
BIG BRAIN CHOOSES THE PARALLAX PROPELLER CHIP FOR THE NEXT GENERATION OF SPACE CRAFTS
Keeping both BASIC Stamp for rapid proto developments and taking on the Propeller chip for advanced operations development is the current plan initiated for the Ultra Space Program and the Ultra Space Administration.
Keeping both BASIC Stamp for rapid proto developments and taking on the Propeller chip for advanced operations development is the current plan initiated for the Ultra Space Program and the Ultra Space Administration.
Labels:
chip,
crafts,
generation,
next,
prop,
propeller,
space,
spacecraft
Friday, October 5, 2012
Propeller Nano Pulsar
![]() |
| GMM Microscope image of a Nano Pulsar |
NANO Technology is here for the Propeller chip! Take a look at this Nano Pulsar created from Propeller SPIN code that operates inside a single Parallax Propeller chip!
This Nano Pulsar is a mere 10-ns to one side and represents the fastest machine inside the chip, currently known in the Propeller world!
Propeller aficionados may be aware of some techniques provided by Parallax to enable the programming of registers belonging to a configurable state machine. There are 32 different modes that program the most spectacular machines. There are two counter modules per Cog with eight Cogs to a single chip for a total of sixteen powerful state machines. The Brain has taken just one Propeller Counter Module and configured it to a powerful Nanotechnology 10-ns Machine.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Nano Pulsar 2 ***
*** Nano Result at Pin ***
*** prop_pulsar2.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
' Declare constants, Feedback/PLL multiplier
_clkmode = xtal1 + pll16x
' External oscillator 6.25 MHz Crystal for 100MHz
_xinfreq = 6_250_000
' 200MIPs, 25MIPs/Cog PUB Toggle3(Pin)
'Use cog's counter module, toggle at clock speed
dira[Pin]~~ 'Set I/O pin to output
' mode PLL BPIN APIN
ctra := 100_000 << 23 + 1 << 9 + Pin
'Establish mode and APIN (BPIN ignored)
'Set FRQA so PHSA[31] toggles every clock
frqa := $8000_0000
repeat 'infinity loop
Wednesday, September 19, 2012
Propeller Chip Nanotechnology
BIG BRAIN Propeller Chip Nanotechnology
PROPELLER CHIP NANOTECHNOLOGY
Welcome to the development of hobby nanotechnology machines inside the Propeller chip!
Parallax Propeller
ABOVE: Step by step with increasing magnification, we examine the P8X832A Propeller chip during the Big Brain's Microscopy Initiative. The final result is shown in one of the photos below (Clumping Molecules of Molecular States Inside a Big Brain Propeller Chip).
Keeping in step with the development of small objects inside the chip, a natural progression moves toward the development of nanotechnology and nano devices.

According to Wikipedia, "Nanotechnology (sometimes shortened to "nanotech") is the manipulation of matter on an atomic and molecular scale. Generally, nanotechnology works with materials, devices, and other structures with at least one dimension sized from 1 to 100 nanometers. Quantum mechanical effects are important at this quantum-realm scale. With a variety of potential applications, nanotechnology is a key technology for the future and governments have invested billions of dollars in its research. Through its National Nanotechnology Initiative, the USA has invested 3.7 billion dollars. The European Union has invested 1.2 billion and Japan 750 million dollars."
BIG BRAIN NANOTECHNOLOGY INITIATIVE
In this installment, the Big Brain will develop the first three PropNanos - two tiny Propeller Pulsars, not unlike powerful Pulsar Stars visible in the Universe (at least in the thought of an extremely fast exampling pulsating periodic timing base) and it will also develop the Propeller Nano Window, an instrument capable of looking at the system and observing timing within the miniscule range of Nanotechnology and nano-timing. (see Propeller Nano Window, Propeller Nano Pulsar and Propeller Nano Pulsar 2)
ABOVE - Beginning at top left, deep inside the Propeller chip, a small section of one Cog RISC processor is progressively enlarged thousands of times, moving towards the molecular level. Big Brain Microscopy Project.
BIG BRAIN PROPELLER MICROSCOPY INITIATIVE
The Big Brain Project has started a Microscopy Initiative to increase the resolution and results of visual optical imaging inside of a Propeller chip, to supplement the study and creation of interior Propeller Nano Technology and objects within the chip. The initiative has built the closest machine to an Electron Microscope, without the complexity, expense or hazards. The Propeller Microscopy Machine PMM is safe and easy to use, and operates on the same concept as the PGT Telescope. The inside of the Propeller chip is creatively viewed as a TinyCosmos containing many objects. Powerful Microscopy with the PMM can put the size of objects into perspective and amplify elements many thousands of times for study. Knowing the map layout of objects inside the Propeller and their juxtaposition relative to other objects will serve to better understand the transient field elements of relative inductance, impedance, capacitance, thermodynamics and numerous physical field parameters.
PROPELLER NANOTECHNOLOGY RANGE
Keep in mind that Nanotechnology encompasses not only the range of small in units of length but that along the dimension of time as time approaches the infinitesimally small until that of the Quantum world begins to emerge. We will begin with the development of time-based nano machines so that we have "measuring yardsticks" from which to continue the construction of more nano sized machines.
UNDERSTANDING THE PROPELLER
To develop Propeller Nanotechnology and the first specialized and smallest PropNano, we need to better understand a number of processor elements inside the Parallax Propeller chip. Many people agree the Propeller is a very innovative microprocessor chip and Parallax owner and designer Chip Gracey did not hold back on its new state of the art design innovation and built in features. This 32-bit 8-core chip is enriched with elements, such as Generators, Counters, VCOs, PLLs, RC Clocks, Registers, and internal components ideal for our projects like sensing Substrate Pin Diodes for example. For review of designs, ideas, internal elements, materials, techniques, and some theory, let's start by looking at important points offered by Parallax.
LEFT: CLUMPING MOLECULES OF MOLECULAR STATES INSIDE A BIG BRAIN PROPELLER CHIP
Powerful Electron Microscopes reveal objects at the upper end of the molecular level. This image, made with the PMM Propeller Microscopy Machine, shows the inside of a Parallax Propeller chip amplified thousands of times. This result is from using a simple and inexpensive technique developed by the Big Brain Electron Microscopy Initiative. To qualify as a nano object by generalized definition, the object size may range between 1 and 100 nanometers on at least one side. Thus, approaching such small sizes (and exceeding) may lead to the study of Quantum effects. Project courtesy Big Brain Labs, Big Brain Electron Microscopy Initiative and Humanoido. Propeller by Parallax.
CONFIGURABLE STATE MACHINES
Two Counters per cog (Configurable state machines generate or sense repetitive signals per clock cycle, Measure frequency, detect edges, count cycles, D/A or A/D conversion, and more, Operate autonomously with optional run-time monitoring and adjusting). The System Counter is a global, read-only, 32-bit counter that increments once every System Clock cycle.
PROPELLER COGS
Cogs can read the System Counter (via their CNT registers) to perform timing calculations and can use the WAITCNT command to create effective delays within their processes. The System Counter is a common resource which every cog can read simultaneously. The System Counter is not cleared upon startup since its practical use is for differential timing. If a cog needs to keep track of time from a specific, fixed moment in time, it simply needs to read and save the initial counter value at that moment in time, and compare subsequent counter values against that initial value.
INTRO TO THE SYSTEM COUNTER
The System Counter is a global, read-only, 32-bit counter that increments once every System Clock cycle. Cogs can read the System Counter (via their CNT register) to perform timing calculations and can use the WAITCNT command to create effective delays within their processes. The System Counter is a common resource. Every cog can read it simultaneously. The System Counter is not cleared upon startup since its practical use is for differential timing. If a cog needs to keep track of time from a specific, fixed moment in time, it simply needs to read and save the initial counter value at that moment in time, and compare all of the later counter values against that initial value.
COUNTER MODULES
Each cog has two counter modules: CTRA and CTRB. Each counter module can control or monitor up to two I/O pins and perform conditional 32-bit accumulation of its FRQ register into its PHS register on every clock cycle. Each counter module also has its own phase-locked loop (PLL) which can be used to synthesize frequencies up to 128 MHz. With a little setup or oversight from the cog, a counter can be used for: frequency synthesis, frequency measurement, pulse counting, pulse measurement, multi-pin state measurement, pulse-width modulation, duty-cycle measurement, digital-to-analog conversion, analog-to-digital conversion.
BUILD A TIME YARDSTICK
This time yardstick is fully adjustable to a time base determined by the toggling of Pin 1. It's currently set for one millisecond per Pin toggle and can easily go forward or backward in time by adjusting the value of Cycles. This is a nice exampling reference program for use in developing more nano apps and it clearly shows how to use the set time feature.
ABOVE PHOTO is a schematic diagram showing the wiring used to make the projects cited in this posting. The crystal is interchangeable with 5Mhz or 6.25Mhz at X0 and X1. The 24LC254 32K EEPROM will store a program as nonvolatile memory. A Parallax Propeller Plug eliminates the need for wiring in complicated USB interfacing. The entire circuit with the 8-Core Propeller chip runs on 3.3 volts. The build on a solderless breadboard takes only a few minutes. The chip's eight cores are about a US dollar each. The Prop Plug is currently $14.99. The crystal and EEPROM are about $1.50 each.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Time Yardstick ***
*** Toggles Time Base Reference Pin P1 ***
*** ms_yardstick.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
_clkmode = xtal1 + pll16x ' Declare constants, Feedback/PLL multiplier
_xinfreq = 5_000_000 ' External oscillator 5 MHz Crystal for 80MHz
' 160MIPs, 20MIPs/Cog
PUB Toggle | TimeBase, Cycles
dira[1]~~ ' Set P1 to output
Cycles := clkfreq / 1000 ' Calculate cycles per 1 millisecond*
TimeBase := cnt ' Get current count
repeat ' Loop endlessly
waitcnt(TimeBase += Cycles) ' Wait to start of next millisecond
!outa[1] ' Toggle P1
CNT returns the Current 32-bit System Counter value. The CNT register contains the current value in the global 32-bit System Counter. The System Counter serves as the central time reference for all cogs; it increments its 32-bit value once every System Clock cycle. Upon power-up/reset, the System Counter starts with an arbitrary value and counts upwards from there, incrementing with every System Clock cycle. Since the System Counter is a read-only resource, every cog can read it simultaneously and can use the returned value to synchronize events, count cycles and measure time.
Using CNT
Read CNT to get the current System Counter value. The actual value itself does not matter for any particular purpose, but the difference in successive reads is very important. Most often, the CNT register is used to delay execution for a specific period or to synchronize an event to the start of a window of time. The next examples use the WAITCNT instruction to achieve this.
waitcnt(3_000_000 + cnt) ' Wait for 3 million clock cycles
The above code is an example of a “fixed delay” It delays the cog’s execution for 3 million system clock cycles (about 1⁄4 second when running with the internal fast oscillator). In Spin code, when using CNT inside of a WAITCNT command as shown above, make sure to write the expression in the form “offset + cnt” as opposed to “cnt + offset” and make sure offset is at least 381 to account for Spin Interpreter overhead and avoid unexpectedly long delays. See the WAITCNT command’s Fixed Delays section on page 218 in the Propeller manual for more information. The next is an example of a “synchronized delay.” It notes the current count at one place and performs an action (toggles a pin) every millisecond thereafter with accuracy as good as that of the oscillator driving the Propeller chip.
Here, I/O pin 1 is set to output. Then the local variable Cycles is set equal to the current System Clock frequency divided by 1000; i.e., the number of System Clock cycles per 1 millisecond of time. Next, the local variable TimeBase is set to the current System Counter value. Finally, the last two lines of code repeat endlessly; each time waiting until the start of the next millisecond and then toggling the state of P1.
For more information, see the WAITCNT section’s Fixed Delays on page 218 and Synchronized Delays on page 219 of the Propeller Manual. The CNT register is read-only so in Spin it should not be assigned a value (i.e., should not be to the left of a := or other assignment operator) and when used in Propeller Assembly it should only be accessed as a source (s-field) value (i.e., mov dest, source).
RUNNING MODE & UPDATE PERIOD
For some of these operations, the cog can be set up and left in a free-running mode. For others, it may use WAITCNT to time-align counter reads and writes within a loop, creating the effect of a more complex state machine. Note that for a cog clock frequency of 80 MHz, the counter update period is a mere 12.5 ns. This high speed, combined with 32-bit precision, allows for very dynamic signal generation and measurement.
DESIGN GOAL
The design goal for the counter was to create a simple and flexible subsystem which could perform some repetitive task on every clock cycle, thereby freeing the cog to perform some computationally richer super-task. While the counters have only 32 basic operating modes, there is no limit to how they might be used dynamically through software. Integral to this concept is the use of the WAITPEQ, WAITPNE, and WAITCNT instructions, which can event-align or time-align a cog with its counters. Each counter has three registers...
QUANTUM MECHANICS
Quantum mechanics (QM – also known as quantum physics, or quantum theory) is a branch of physics dealing with physical phenomena at microscopic scales, where the action is on the order of the Planck constant. Quantum mechanics departs from classical mechanics primarily at the quantum realm of atomic and subatomic length scales. QM provides a mathematical description of much of the dual particle-like and wave-like behavior and interactions of energy and matter. In advanced topics of quantum mechanics, some of these behaviors are macroscopic and only emerge at extreme (i.e., very low or very high) energies or temperatures. The name quantum mechanics derives from the observation that some physical quantities can change only in discrete amounts (Latin quanta), and not in a continuous (cf. analog) way. For example, the angular momentum of an electron bound to an atom or molecule is quantized. In the context of quantum mechanics, the wave–particle duality of energy and matter and the uncertainty principle provide a unified view of the behavior of photons, electrons, and other atomic-scale objects. -Wikipedia
THE ELECTRON MICROSCOPE
An electron microscope uses a beam of electrons to illuminate a specimen and produce a magnified image. An electron microscope (EM) has greater resolving power than a light-powered optical microscope because electrons have wavelengths about 100,000 times shorter than visible light (photons) . They can achieve better than 50 pm resolution and magnifications of up to about 10,000,000x whereas ordinary, non-confocal light microscopes are limited by diffraction to about 200 nm resolution and useful magnifications below 2000x.
The electron microscope uses electrostatic and electromagnetic "lenses" to control the electron beam and focus it to form an image. These lenses are analogous to but different from the glass lenses of an optical microscope that form a magnified image by focusing light on or through the specimen. Electron microscopes are used to observe a wide range of biological and inorganic specimens including microorganisms, cells, large molecules, biopsy samples, metals, and crystals. Industrially, the electron microscope is often used for quality control and failure analysis. For more information, refer to Wikipedia.
Propeller Nano Tool Development
THE NANO WINDOW
Propeller Nano Window Here's the first Nano device for our project and a tool for measuring the smallest units of System clock cycling inside the Propeller chip, using the System Counter and programming in Spin language. The code provides a way to read and view the numerical result of the System Counter CNT register and display a binary result on a series of LED lights attached to pins P0 through P31. The number represented by 32 binary lights: Note, although there are several systems and methods of representing signed integers with a processor, using sign & magnitude or one's complement systems, the range is from -2147483647 to 2147483647. Using a two's complement system, it's -2147483648 to 2147483647.
{
************************************************************************
************************************************************************
*** ***
*** Propeller NANO Window ***
*** Displays Binary Result on LEDs P0-P31 ***
*** nano_window.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
_clkmode = xtal1 + pll16x ' Declare constants, Feedback/PLL multiplier
_xinfreq = 5_000_000 ' External oscillator 5 MHz Crystal for 80MHz
' 160MIPs, 20MIPs/Cog
VAR ' Variables Declaration
long Time ' Time is the returned variable from cnt
PUB ReadCNT ' Read the system counter public method
Time := cnt ' Read System Counter 32 bit number
DIRA := %11111111111111111111111111111111 ' Direction State -
' Make pins 0-31 outputs
OUTA := Time ' Output State - Send Time variable to A register
' & output
waitpne(0, 0, 0) ' Keep cog alive or spin interpreter will exit
' (or use repeat)
CREATING A NANO PULSAR
GOING BEYOND A PULSAR STAR
Propeller Nano Pulsar Are there stars inside the Propeller chip? We think so. Let's create a simple exampling Nano Pulsar, a tiny machine built up from code and the Counter Module to create incredibly small nano pulses at pin location. Not unlike a periodic Pulsar Star (which can provide a reference millisecond periodic timing base), the Propeller Nano Pulsar is programmed to continually and periodically emit its nanosecond range signal, actually exceeding the range parameters of a Pulsar Star, in this case a repeating 12.6 nano-second wide nano pulse. Programming is in Propeller Spin language.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Nano Pulsar ***
*** Nano Result at Pin ***
*** prop_pulsar.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
' Declare constants, Feedback/PLL multiplier
_clkmode = xtal1 + pll16x
' External oscillator 5 MHz Crystal for 80MHz
_xinfreq = 5_000_000
' 160MIPs, 20MIPs/Cog PUB Toggle3(Pin)
'Use cog's counter module, toggle at clock speed
dira[Pin]~~ 'Set I/O pin to output
' mode PLL BPIN APIN
ctra := 100_000 << 23 + 1 << 9 + Pin
'Establish mode and APIN (BPIN ignored)
'Set FRQA so PHSA[31] toggles every clock
frqa := $8000_0000
repeat 'infinity loop
This code produces a Pulsar with 12.6-ns wide nano pulses at definitive pin location. The period is only 25.0 nanoseconds.
THE SMALLEST PULSAR
GOING SMALLER with more "Nano-esse"
The machine can be rebuilt for higher resolution with a 6.25Mhz hardware crystal to sub for the 5Mhz crystal, going from 80Mhz clock to 100Mhz and creating a 10-ns wide pulse range with a smaller period of only 20 nanoseconds. This ultra miniscule 10-ns wide "machine" is the smallest created thus far (in terms of pulsating width) within the Propeller chip' TinyCOSMOS. It has a timing is equal to ten billionths of one second.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Nano Pulsar 2 ***
*** Nano Result at Pin ***
*** prop_pulsar2.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
' Declare constants, Feedback/PLL multiplier
_clkmode = xtal1 + pll16x
' External oscillator 6.25 MHz Crystal for 100MHz
_xinfreq = 6_250_000
' 200MIPs, 25MIPs/Cog PUB Toggle3(Pin)
'Use cog's counter module, toggle at clock speed
dira[Pin]~~ 'Set I/O pin to output
' mode PLL BPIN APIN
ctra := 100_000 << 23 + 1 << 9 + Pin
'Establish mode and APIN (BPIN ignored)
'Set FRQA so PHSA[31] toggles every clock
frqa := $8000_0000
repeat 'infinity loop
DEFINING NANOTIME
Let's introduce the Big Brain's concept of NanoTime for the Propeller chip. While Nano size is well defined within a range of units, the unit range of Nano time is not. Therefore this project will set the range of Nano time within the criteria range (along at least one side of a variable cycle) of one nanosecond to 100 nanoseconds. This is one billionth of a second to 100 billionths of a second. Ten nano-seconds is equal to 1/100th of a microsecond while a hundred nano-seconds is equal to 1/10th microsecond. Generally, nanotechnology works with materials, devices, and other structures with at least one dimension sized from 1 to 100 nanometers.
CONVERTING UNITS
The Mac Dashboard within OSX 10.6.8 is a time quick and easy conversion program with units ranging from nanoseconds to years. It shows the nanotechnology range of 1 to 100 ns is equal to .001 to .1 microsecond and 1E-6 to .0001 millisecond when converted.
NANOSECOND
A nanosecond (ns) is one billionth of a second (10−9 or 1/1,000,000,000 s). A nanosecond is equal to 1000 picoseconds or 1⁄1000 microsecond.
NANOMETER
A nanometer; symbol nm, is a unit of length in the metric system, equal to one billionth of a meter.
PULSAR
A pulsar (portmanteau of pulsating star) is a highly magnetized, rotating neutron star that emits a beam of electromagnetic radiation. This radiation can only be observed when the beam of emission is pointing towards the Earth, much the way a lighthouse can only be seen when the light is pointed in the direction of an observer, and is responsible for the pulsed appearance of emission. Neutron stars are very dense, and have short, regular rotational periods. This produces a very precise interval between pulses that range from roughly milli-seconds to seconds for an individual pulsar. The precise periods of pulsars makes them useful tools. Observations of a pulsar in a binary neutron star system were used to indirectly confirm the existence of gravitational radiation. The first extrasolar planets were discovered around a pulsar, PSR B1257+12. Certain types of pulsars rival atomic clocks in their accuracy in keeping time. - Wikipedia
LINKS
Molecular Microscopy Initiative
PROPELLER CHIP NANOTECHNOLOGY
Welcome to the development of hobby nanotechnology machines inside the Propeller chip!
Parallax Propeller
![]() | |
| Inside the chip: Parallax Propeller magnified thousands of times |
ABOVE: Step by step with increasing magnification, we examine the P8X832A Propeller chip during the Big Brain's Microscopy Initiative. The final result is shown in one of the photos below (Clumping Molecules of Molecular States Inside a Big Brain Propeller Chip).
Keeping in step with the development of small objects inside the chip, a natural progression moves toward the development of nanotechnology and nano devices.

According to Wikipedia, "Nanotechnology (sometimes shortened to "nanotech") is the manipulation of matter on an atomic and molecular scale. Generally, nanotechnology works with materials, devices, and other structures with at least one dimension sized from 1 to 100 nanometers. Quantum mechanical effects are important at this quantum-realm scale. With a variety of potential applications, nanotechnology is a key technology for the future and governments have invested billions of dollars in its research. Through its National Nanotechnology Initiative, the USA has invested 3.7 billion dollars. The European Union has invested 1.2 billion and Japan 750 million dollars."
BIG BRAIN NANOTECHNOLOGY INITIATIVE
In this installment, the Big Brain will develop the first three PropNanos - two tiny Propeller Pulsars, not unlike powerful Pulsar Stars visible in the Universe (at least in the thought of an extremely fast exampling pulsating periodic timing base) and it will also develop the Propeller Nano Window, an instrument capable of looking at the system and observing timing within the miniscule range of Nanotechnology and nano-timing. (see Propeller Nano Window, Propeller Nano Pulsar and Propeller Nano Pulsar 2)
ABOVE - Beginning at top left, deep inside the Propeller chip, a small section of one Cog RISC processor is progressively enlarged thousands of times, moving towards the molecular level. Big Brain Microscopy Project.
BIG BRAIN PROPELLER MICROSCOPY INITIATIVE
The Big Brain Project has started a Microscopy Initiative to increase the resolution and results of visual optical imaging inside of a Propeller chip, to supplement the study and creation of interior Propeller Nano Technology and objects within the chip. The initiative has built the closest machine to an Electron Microscope, without the complexity, expense or hazards. The Propeller Microscopy Machine PMM is safe and easy to use, and operates on the same concept as the PGT Telescope. The inside of the Propeller chip is creatively viewed as a TinyCosmos containing many objects. Powerful Microscopy with the PMM can put the size of objects into perspective and amplify elements many thousands of times for study. Knowing the map layout of objects inside the Propeller and their juxtaposition relative to other objects will serve to better understand the transient field elements of relative inductance, impedance, capacitance, thermodynamics and numerous physical field parameters.
PROPELLER NANOTECHNOLOGY RANGE
Keep in mind that Nanotechnology encompasses not only the range of small in units of length but that along the dimension of time as time approaches the infinitesimally small until that of the Quantum world begins to emerge. We will begin with the development of time-based nano machines so that we have "measuring yardsticks" from which to continue the construction of more nano sized machines.
UNDERSTANDING THE PROPELLER
To develop Propeller Nanotechnology and the first specialized and smallest PropNano, we need to better understand a number of processor elements inside the Parallax Propeller chip. Many people agree the Propeller is a very innovative microprocessor chip and Parallax owner and designer Chip Gracey did not hold back on its new state of the art design innovation and built in features. This 32-bit 8-core chip is enriched with elements, such as Generators, Counters, VCOs, PLLs, RC Clocks, Registers, and internal components ideal for our projects like sensing Substrate Pin Diodes for example. For review of designs, ideas, internal elements, materials, techniques, and some theory, let's start by looking at important points offered by Parallax.
![]() | |
| Powerful microscopes reach molecular levels |
Powerful Electron Microscopes reveal objects at the upper end of the molecular level. This image, made with the PMM Propeller Microscopy Machine, shows the inside of a Parallax Propeller chip amplified thousands of times. This result is from using a simple and inexpensive technique developed by the Big Brain Electron Microscopy Initiative. To qualify as a nano object by generalized definition, the object size may range between 1 and 100 nanometers on at least one side. Thus, approaching such small sizes (and exceeding) may lead to the study of Quantum effects. Project courtesy Big Brain Labs, Big Brain Electron Microscopy Initiative and Humanoido. Propeller by Parallax.
CONFIGURABLE STATE MACHINES
Two Counters per cog (Configurable state machines generate or sense repetitive signals per clock cycle, Measure frequency, detect edges, count cycles, D/A or A/D conversion, and more, Operate autonomously with optional run-time monitoring and adjusting). The System Counter is a global, read-only, 32-bit counter that increments once every System Clock cycle.
PROPELLER COGS
Cogs can read the System Counter (via their CNT registers) to perform timing calculations and can use the WAITCNT command to create effective delays within their processes. The System Counter is a common resource which every cog can read simultaneously. The System Counter is not cleared upon startup since its practical use is for differential timing. If a cog needs to keep track of time from a specific, fixed moment in time, it simply needs to read and save the initial counter value at that moment in time, and compare subsequent counter values against that initial value.
INTRO TO THE SYSTEM COUNTER
The System Counter is a global, read-only, 32-bit counter that increments once every System Clock cycle. Cogs can read the System Counter (via their CNT register) to perform timing calculations and can use the WAITCNT command to create effective delays within their processes. The System Counter is a common resource. Every cog can read it simultaneously. The System Counter is not cleared upon startup since its practical use is for differential timing. If a cog needs to keep track of time from a specific, fixed moment in time, it simply needs to read and save the initial counter value at that moment in time, and compare all of the later counter values against that initial value.
COUNTER MODULES
Each cog has two counter modules: CTRA and CTRB. Each counter module can control or monitor up to two I/O pins and perform conditional 32-bit accumulation of its FRQ register into its PHS register on every clock cycle. Each counter module also has its own phase-locked loop (PLL) which can be used to synthesize frequencies up to 128 MHz. With a little setup or oversight from the cog, a counter can be used for: frequency synthesis, frequency measurement, pulse counting, pulse measurement, multi-pin state measurement, pulse-width modulation, duty-cycle measurement, digital-to-analog conversion, analog-to-digital conversion.
BUILD A TIME YARDSTICK
This time yardstick is fully adjustable to a time base determined by the toggling of Pin 1. It's currently set for one millisecond per Pin toggle and can easily go forward or backward in time by adjusting the value of Cycles. This is a nice exampling reference program for use in developing more nano apps and it clearly shows how to use the set time feature.
ABOVE PHOTO is a schematic diagram showing the wiring used to make the projects cited in this posting. The crystal is interchangeable with 5Mhz or 6.25Mhz at X0 and X1. The 24LC254 32K EEPROM will store a program as nonvolatile memory. A Parallax Propeller Plug eliminates the need for wiring in complicated USB interfacing. The entire circuit with the 8-Core Propeller chip runs on 3.3 volts. The build on a solderless breadboard takes only a few minutes. The chip's eight cores are about a US dollar each. The Prop Plug is currently $14.99. The crystal and EEPROM are about $1.50 each.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Time Yardstick ***
*** Toggles Time Base Reference Pin P1 ***
*** ms_yardstick.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
_clkmode = xtal1 + pll16x ' Declare constants, Feedback/PLL multiplier
_xinfreq = 5_000_000 ' External oscillator 5 MHz Crystal for 80MHz
' 160MIPs, 20MIPs/Cog
PUB Toggle | TimeBase, Cycles
dira[1]~~ ' Set P1 to output
Cycles := clkfreq / 1000 ' Calculate cycles per 1 millisecond*
TimeBase := cnt ' Get current count
repeat ' Loop endlessly
waitcnt(TimeBase += Cycles) ' Wait to start of next millisecond
!outa[1] ' Toggle P1
CNT returns the Current 32-bit System Counter value. The CNT register contains the current value in the global 32-bit System Counter. The System Counter serves as the central time reference for all cogs; it increments its 32-bit value once every System Clock cycle. Upon power-up/reset, the System Counter starts with an arbitrary value and counts upwards from there, incrementing with every System Clock cycle. Since the System Counter is a read-only resource, every cog can read it simultaneously and can use the returned value to synchronize events, count cycles and measure time.
Using CNT
Read CNT to get the current System Counter value. The actual value itself does not matter for any particular purpose, but the difference in successive reads is very important. Most often, the CNT register is used to delay execution for a specific period or to synchronize an event to the start of a window of time. The next examples use the WAITCNT instruction to achieve this.
waitcnt(3_000_000 + cnt) ' Wait for 3 million clock cycles
The above code is an example of a “fixed delay” It delays the cog’s execution for 3 million system clock cycles (about 1⁄4 second when running with the internal fast oscillator). In Spin code, when using CNT inside of a WAITCNT command as shown above, make sure to write the expression in the form “offset + cnt” as opposed to “cnt + offset” and make sure offset is at least 381 to account for Spin Interpreter overhead and avoid unexpectedly long delays. See the WAITCNT command’s Fixed Delays section on page 218 in the Propeller manual for more information. The next is an example of a “synchronized delay.” It notes the current count at one place and performs an action (toggles a pin) every millisecond thereafter with accuracy as good as that of the oscillator driving the Propeller chip.
Here, I/O pin 1 is set to output. Then the local variable Cycles is set equal to the current System Clock frequency divided by 1000; i.e., the number of System Clock cycles per 1 millisecond of time. Next, the local variable TimeBase is set to the current System Counter value. Finally, the last two lines of code repeat endlessly; each time waiting until the start of the next millisecond and then toggling the state of P1.
For more information, see the WAITCNT section’s Fixed Delays on page 218 and Synchronized Delays on page 219 of the Propeller Manual. The CNT register is read-only so in Spin it should not be assigned a value (i.e., should not be to the left of a := or other assignment operator) and when used in Propeller Assembly it should only be accessed as a source (s-field) value (i.e., mov dest, source).
RUNNING MODE & UPDATE PERIOD
For some of these operations, the cog can be set up and left in a free-running mode. For others, it may use WAITCNT to time-align counter reads and writes within a loop, creating the effect of a more complex state machine. Note that for a cog clock frequency of 80 MHz, the counter update period is a mere 12.5 ns. This high speed, combined with 32-bit precision, allows for very dynamic signal generation and measurement.
DESIGN GOAL
The design goal for the counter was to create a simple and flexible subsystem which could perform some repetitive task on every clock cycle, thereby freeing the cog to perform some computationally richer super-task. While the counters have only 32 basic operating modes, there is no limit to how they might be used dynamically through software. Integral to this concept is the use of the WAITPEQ, WAITPNE, and WAITCNT instructions, which can event-align or time-align a cog with its counters. Each counter has three registers...
QUANTUM MECHANICS
Quantum mechanics (QM – also known as quantum physics, or quantum theory) is a branch of physics dealing with physical phenomena at microscopic scales, where the action is on the order of the Planck constant. Quantum mechanics departs from classical mechanics primarily at the quantum realm of atomic and subatomic length scales. QM provides a mathematical description of much of the dual particle-like and wave-like behavior and interactions of energy and matter. In advanced topics of quantum mechanics, some of these behaviors are macroscopic and only emerge at extreme (i.e., very low or very high) energies or temperatures. The name quantum mechanics derives from the observation that some physical quantities can change only in discrete amounts (Latin quanta), and not in a continuous (cf. analog) way. For example, the angular momentum of an electron bound to an atom or molecule is quantized. In the context of quantum mechanics, the wave–particle duality of energy and matter and the uncertainty principle provide a unified view of the behavior of photons, electrons, and other atomic-scale objects. -Wikipedia
THE ELECTRON MICROSCOPE
An electron microscope uses a beam of electrons to illuminate a specimen and produce a magnified image. An electron microscope (EM) has greater resolving power than a light-powered optical microscope because electrons have wavelengths about 100,000 times shorter than visible light (photons) . They can achieve better than 50 pm resolution and magnifications of up to about 10,000,000x whereas ordinary, non-confocal light microscopes are limited by diffraction to about 200 nm resolution and useful magnifications below 2000x.
The electron microscope uses electrostatic and electromagnetic "lenses" to control the electron beam and focus it to form an image. These lenses are analogous to but different from the glass lenses of an optical microscope that form a magnified image by focusing light on or through the specimen. Electron microscopes are used to observe a wide range of biological and inorganic specimens including microorganisms, cells, large molecules, biopsy samples, metals, and crystals. Industrially, the electron microscope is often used for quality control and failure analysis. For more information, refer to Wikipedia.
Propeller Nano Tool Development
THE NANO WINDOW
Propeller Nano Window Here's the first Nano device for our project and a tool for measuring the smallest units of System clock cycling inside the Propeller chip, using the System Counter and programming in Spin language. The code provides a way to read and view the numerical result of the System Counter CNT register and display a binary result on a series of LED lights attached to pins P0 through P31. The number represented by 32 binary lights: Note, although there are several systems and methods of representing signed integers with a processor, using sign & magnitude or one's complement systems, the range is from -2147483647 to 2147483647. Using a two's complement system, it's -2147483648 to 2147483647.
{
************************************************************************
************************************************************************
*** ***
*** Propeller NANO Window ***
*** Displays Binary Result on LEDs P0-P31 ***
*** nano_window.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
_clkmode = xtal1 + pll16x ' Declare constants, Feedback/PLL multiplier
_xinfreq = 5_000_000 ' External oscillator 5 MHz Crystal for 80MHz
' 160MIPs, 20MIPs/Cog
VAR ' Variables Declaration
long Time ' Time is the returned variable from cnt
PUB ReadCNT ' Read the system counter public method
Time := cnt ' Read System Counter 32 bit number
DIRA := %11111111111111111111111111111111 ' Direction State -
' Make pins 0-31 outputs
OUTA := Time ' Output State - Send Time variable to A register
' & output
waitpne(0, 0, 0) ' Keep cog alive or spin interpreter will exit
' (or use repeat)
CREATING A NANO PULSAR
GOING BEYOND A PULSAR STAR
Propeller Nano Pulsar Are there stars inside the Propeller chip? We think so. Let's create a simple exampling Nano Pulsar, a tiny machine built up from code and the Counter Module to create incredibly small nano pulses at pin location. Not unlike a periodic Pulsar Star (which can provide a reference millisecond periodic timing base), the Propeller Nano Pulsar is programmed to continually and periodically emit its nanosecond range signal, actually exceeding the range parameters of a Pulsar Star, in this case a repeating 12.6 nano-second wide nano pulse. Programming is in Propeller Spin language.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Nano Pulsar ***
*** Nano Result at Pin ***
*** prop_pulsar.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
' Declare constants, Feedback/PLL multiplier
_clkmode = xtal1 + pll16x
' External oscillator 5 MHz Crystal for 80MHz
_xinfreq = 5_000_000
' 160MIPs, 20MIPs/Cog PUB Toggle3(Pin)
'Use cog's counter module, toggle at clock speed
dira[Pin]~~ 'Set I/O pin to output
' mode PLL BPIN APIN
ctra := 100_000 << 23 + 1 << 9 + Pin
'Establish mode and APIN (BPIN ignored)
'Set FRQA so PHSA[31] toggles every clock
frqa := $8000_0000
repeat 'infinity loop
This code produces a Pulsar with 12.6-ns wide nano pulses at definitive pin location. The period is only 25.0 nanoseconds.
THE SMALLEST PULSAR
GOING SMALLER with more "Nano-esse"
The machine can be rebuilt for higher resolution with a 6.25Mhz hardware crystal to sub for the 5Mhz crystal, going from 80Mhz clock to 100Mhz and creating a 10-ns wide pulse range with a smaller period of only 20 nanoseconds. This ultra miniscule 10-ns wide "machine" is the smallest created thus far (in terms of pulsating width) within the Propeller chip' TinyCOSMOS. It has a timing is equal to ten billionths of one second.
{
************************************************************************
************************************************************************
*** ***
*** Propeller Nano Pulsar 2 ***
*** Nano Result at Pin ***
*** prop_pulsar2.spin ***
*** ***
*** ***
*** V01.0 ***
*** Humanoido ***
*** ***
*** ***
************************************************************************
}
CON
' Declare constants, Feedback/PLL multiplier
_clkmode = xtal1 + pll16x
' External oscillator 6.25 MHz Crystal for 100MHz
_xinfreq = 6_250_000
' 200MIPs, 25MIPs/Cog PUB Toggle3(Pin)
'Use cog's counter module, toggle at clock speed
dira[Pin]~~ 'Set I/O pin to output
' mode PLL BPIN APIN
ctra := 100_000 << 23 + 1 << 9 + Pin
'Establish mode and APIN (BPIN ignored)
'Set FRQA so PHSA[31] toggles every clock
frqa := $8000_0000
repeat 'infinity loop
DEFINING NANOTIME
Let's introduce the Big Brain's concept of NanoTime for the Propeller chip. While Nano size is well defined within a range of units, the unit range of Nano time is not. Therefore this project will set the range of Nano time within the criteria range (along at least one side of a variable cycle) of one nanosecond to 100 nanoseconds. This is one billionth of a second to 100 billionths of a second. Ten nano-seconds is equal to 1/100th of a microsecond while a hundred nano-seconds is equal to 1/10th microsecond. Generally, nanotechnology works with materials, devices, and other structures with at least one dimension sized from 1 to 100 nanometers.
CONVERTING UNITS
The Mac Dashboard within OSX 10.6.8 is a time quick and easy conversion program with units ranging from nanoseconds to years. It shows the nanotechnology range of 1 to 100 ns is equal to .001 to .1 microsecond and 1E-6 to .0001 millisecond when converted.
NANOSECOND
A nanosecond (ns) is one billionth of a second (10−9 or 1/1,000,000,000 s). A nanosecond is equal to 1000 picoseconds or 1⁄1000 microsecond.
NANOMETER
A nanometer; symbol nm, is a unit of length in the metric system, equal to one billionth of a meter.
PULSAR
A pulsar (portmanteau of pulsating star) is a highly magnetized, rotating neutron star that emits a beam of electromagnetic radiation. This radiation can only be observed when the beam of emission is pointing towards the Earth, much the way a lighthouse can only be seen when the light is pointed in the direction of an observer, and is responsible for the pulsed appearance of emission. Neutron stars are very dense, and have short, regular rotational periods. This produces a very precise interval between pulses that range from roughly milli-seconds to seconds for an individual pulsar. The precise periods of pulsars makes them useful tools. Observations of a pulsar in a binary neutron star system were used to indirectly confirm the existence of gravitational radiation. The first extrasolar planets were discovered around a pulsar, PSR B1257+12. Certain types of pulsars rival atomic clocks in their accuracy in keeping time. - Wikipedia
LINKS
Molecular Microscopy Initiative
Labels:
chip,
machine,
measure,
micro,
micron,
microscope,
nano,
nanometer,
nanosecond,
nanotechnology,
probe,
prop,
propeller,
propnano,
ruler,
technology,
telescope
Subscribe to:
Posts (Atom)















