Addresses in regards to IC registers

Thread Starter

UserUnknown

Joined Sep 1, 2020
4
Hi everyone,

Im new here and want to say, "Hi" first of all.

Now the question, "How can I make my own addressing index for registers and is it possible on register IC circuits?"

Ive been looking to build some of my own devices for some test equipment that I want to experiment with. A problem I want to overcome is space 1st of all, as Im looking to at running multiple devices for detection and measurement. Some are the same kind and others of various types, but I need to hold restraint to size, as I dont want to be tying 500 connections into a microcontroller/processor. (Ill explain)

I want to make my own addressing system regarding the sensor and sensor data input into an addressing index, that than, will follow the data line to the microcontroller/processor. Im wanting to use hardware components and assembly to assign registers to store the input data, send data both to microccontroller or to another addressed register, than matched, compared, or analyzed, from previous sets of data at some set register in regard to some address. Im looking to do this with as little tied into the micocontroller/processor as possible.

I was wanting to use multiple IC to do this with. Have 1 IC assigned for instance 0x0000 that contains registered information Ox0000 0x0000 - 0x0000 0x0007 for first IC than 2nd IC have 0x0001 0x0000 - 0x0001 0x0007 for addressing system amd so on.

By addressing this way I believe in theroy I should be able to hook up an unlimited number of devices I want to use until the microcontroller/processor bandwidth is taken up using limited number of connections to the microcontroller/processor itself. I was wanting to use sets of IC like registers to achive this. I was was looking at having 8 sensors hooked into 1 IC and than have all those sensors have addresses for individual HEX values (1 HEX at time of sample) across the register for(at) each sensor at each address for that sensor at that register.

So IC-0 has:
0x0000 Ox0000 + (HEX value)
0x0000 0x0001 + (HEX value)
0x0000 0x0002 + (HEX value)
....
IC-1
0x0001 0x0000 + (HEX value)
....
IC-65535
0xFFFF 0x0007 + (HEX value)
and so on until I reach the number of inputs I am requiring to accomplish my task.

I was wondering if this is possible? Is it practicle? Is this something I am going have to create entirely from ground up? Are registers able to have this degree of accessibilty and what type of IC are suggested for this?

I looked at shift registers for trying to accomplish such a task, but I did not see or find a way to address each individual input pin and have that sent through the data line for each pin on 1 IC. Ive seen where a byte of information can be sent through at a time with each clock cycle, but I am wanting to send 2bytes from each input pin (addressed) through a data line back to microcontroller/processor. At any given time on data line I need to have the ability to send 16bytes [addressed-input (2byte)] data along the data line from each IC along the circuit. If I have say, "3 IC with 8 input each" I need to be able to see each address and value for all 48bytes.

Sorry if this doesnt make sense, Ive been trying to follow data sheets to see if this is addressed, but I cant seem to find the information I am looking for.

I was wanting to write a script to use the Arduino (if possible) to input the data in registers [dont know if it can handle that kind of input or stress from addressed IC], than use a computer to compare data inputed. The Arduino is only going be used as go inbetween so I can attempt to use its IDE functionality also, if possible. I can also use a microprocessor development board, if the Arduino is unable to achive this. Im looking to not have the computer run this, but as a mapping system for the data input from the I/O. Thats part of the reason why I want HEX from my measurement (so I can have a higher degree of precision measurement) of the sensor data and addressed to each sensor. I am wanting to make an interface on the computer for the addressed Hex values coming in. There I can make a GUI to display the addressed data as I choose. Tablet is also going to be used with design for it to also have a GUI. This is going to run multi platform depending if home to look at data or away from work station.

Thank you and hope I did not confuse anyone.
 
Last edited:

andrewmm

Joined Feb 25, 2011
1,486
Do I understand this as some sort of IO expanded then ?

Have you considered "just" sticking a FPGA onto the processor ?

If you are making your own, there are many busses to use.

232, 422, I2C and SPI are the standard "slower" system, normally arranged as a star from the processor.

Other solutions , USB , PCIe, Ethernet , give much greater bandwidth ,
you arrange these as a tree network, till eventually they get to the peripheral you want , normalcy on I2C or SPI in a star network.

May be a bit more information as to the application, we can give some more advise.
 

Thread Starter

UserUnknown

Joined Sep 1, 2020
4
Im not looking to have like an I/O expander so much an being able to address each I/O in the circuit. I would be using it to expand I/O functionality. Im still trying to figure out best option possible. Ive compressed alot of information down over the last year, now I am trying to use it all.

I have a FPGA in box still I have not opened up. Im looking to have more connections in(at) the circuitry than to a board. I just want the controller/processor to distribute the information from bus line.

Sorry, my understanding is there, Im just lacking the experience yet to have full comprehension.
 

Thread Starter

UserUnknown

Joined Sep 1, 2020
4
Im sorry again for my inability to answer fully. What I asked in OP is the extent of my knowledge from searching to this subject and understanding to. Im asking from the stand point of novice experience bookworm and novice to this field of understanding. So far, Im all self-taught in all manner, and this is my first post to expand that pursuit

The plethora of knowledge I hold is held back in entirety, be from lack of experience, or lack of entire comprehension, and that leads to some form of some therefore is from. I have an idea of how something "should work" in my mind, so please bear with me if something seems incomplete.
 

Papabravo

Joined Feb 24, 2006
16,173
I'm a retired engineer with half a century in industry. IMHO words are failing you. From your written description I cannot for the life of me understand what you are driving at. This is NOT your fault, it is the fault of natural language to convey abstract thought. I do have what I feel is a helpful suggestion. Make a drawing showing how a "register address" selects a group of bits, and then show how the bits are numbered within that addressed register. Let us not worry for the time being about how the data gets in and out, or how such a thing might be implemented.

PS - I could care less about your lack of experience. It is not relevant.
 

KeithWalker

Joined Jul 10, 2017
1,789
All you need is a simple demultiplexer driving relays or digital or analog switches to connect the output from the devices to common inputs. You can scan all the analog or digital inputs in sequence or select the input from any device because each input has a discrete access address. For more information see the attached url:
http://electronics-course.com/demux
Regards,
Keith
 

andrewmm

Joined Feb 25, 2011
1,486
May be we could help if we had an idea of the situation your looking at .
Over what physical level are you looking at ?
IC, PCB, shelf , rack, room , global ?

what sort of time of processing do you want, and how many Io do you expect, and how fast is the data rate from each IO ?
how are you looking at communicating the information on whats at what address to the processor(s) ?
 

MrChips

Joined Oct 2, 2009
23,545
You are thinking old school along the lines of a computer architecture of memory addresses, memory mapped input/output and peripheral addresses.

What you are looking for is a data acquisition system with device addressing. Think "serial bus system".
There are numerous serial bus systems:
1) 1-Wire bus
2) 2-wire RX/TX bus (UART)
3) SPI - serial peripheral interface
4) I2C
5) RS-485
6) MODBUS
7) CAN
8) USB
9) Bluetooth
10) WiFi
11) IrDA
12) RF

All devices are addressable and expandable to an infinite number of addresses.
All data is expandable to an infinite number of data that can be transmitted.
Pick a serial bus and proceed from there.

You need to get the concept of HEX out of your head. Hex is a form of data representation, just like decimal. All data is binary. Hex is binary.
 

Thread Starter

UserUnknown

Joined Sep 1, 2020
4
Thank you all for your responses.
I was looking into serial bus systems as suggested per MrChips post andcould not find a suitable diagram or reference to how USB works other tha it has 127 addresses possible and USB diagrams and schematics seem none exsistant.

Any help on USB?
Also, I havent got around to looking at multiplexer or made a drawing yet. Ill have wait til I return to work station for CAD
 

jpanhalt

Joined Jan 18, 2008
11,088
Hi everyone,

Im new here and want to say, "Hi" first of all.

Now the question, "How can I make my own addressing index for registers and is it possible on register IC circuits?"

Ive been looking to build some of my own devices for some test equipment that I want to experiment with. A problem I want to overcome is space 1st of all, as Im looking to at running multiple devices for detection and measurement. Some are the same kind and others of various types, but I need to hold restraint to size, as I dont want to be tying 500 connections into a microcontroller/processor. (Ill explain)

I want to make my own addressing system regarding the sensor and sensor data input into an addressing index, that than, will follow the data line to the microcontroller/processor. Im wanting to use hardware components and assembly to assign registers to store the input data, send data both to microccontroller or to another addressed register, than matched, compared, or analyzed, from previous sets of data at some set register in regard to some address. Im looking to do this with as little tied into the micocontroller/processor as possible.

I was wanting to use multiple IC to do this with. Have 1 IC assigned for instance 0x0000 that contains registered information Ox0000 0x0000 - 0x0000 0x0007 for first IC than 2nd IC have 0x0001 0x0000 - 0x0001 0x0007 for addressing system amd so on.

By addressing this way I believe in theroy I should be able to hook up an unlimited number of devices I want to use until the microcontroller/processor bandwidth is taken up using limited number of connections to the microcontroller/processor itself. I was wanting to use sets of IC like registers to achive this. I was was looking at having 8 sensors hooked into 1 IC and than have all those sensors have addresses for individual HEX values (1 HEX at time of sample) across the register for(at) each sensor at each address for that sensor at that register.

So IC-0 has:
0x0000 Ox0000 + (HEX value)
0x0000 0x0001 + (HEX value)
0x0000 0x0002 + (HEX value)
....
IC-1
0x0001 0x0000 + (HEX value)
....
IC-65535
0xFFFF 0x0007 + (HEX value)
and so on until I reach the number of inputs I am requiring to accomplish my task.

I was wondering if this is possible? Is it practicle? Is this something I am going have to create entirely from ground up? Are registers able to have this degree of accessibilty and what type of IC are suggested for this?

I looked at shift registers for trying to accomplish such a task, but I did not see or find a way to address each individual input pin and have that sent through the data line for each pin on 1 IC. Ive seen where a byte of information can be sent through at a time with each clock cycle, but I am wanting to send 2bytes from each input pin (addressed) through a data line back to microcontroller/processor. At any given time on data line I need to have the ability to send 16bytes [addressed-input (2byte)] data along the data line from each IC along the circuit. If I have say, "3 IC with 8 input each" I need to be able to see each address and value for all 48bytes.

Sorry if this doesnt make sense, Ive been trying to follow data sheets to see if this is addressed, but I cant seem to find the information I am looking for.

I was wanting to write a script to use the Arduino (if possible) to input the data in registers [dont know if it can handle that kind of input or stress from addressed IC], than use a computer to compare data inputed. The Arduino is only going be used as go inbetween so I can attempt to use its IDE functionality also, if possible. I can also use a microprocessor development board, if the Arduino is unable to achive this. Im looking to not have the computer run this, but as a mapping system for the data input from the I/O. Thats part of the reason why I want HEX from my measurement (so I can have a higher degree of precision measurement) of the sensor data and addressed to each sensor. I am wanting to make an interface on the computer for the addressed Hex values coming in. There I can make a GUI to display the addressed data as I choose. Tablet is also going to be used with design for it to also have a GUI. This is going to run multi platform depending if home to look at data or away from work station.

Thank you and hope I did not confuse anyone.
Have you considered "just" sticking a FPGA onto the processor ?
 

soyez

Joined Aug 17, 2020
51
Hi everyone,

Im new here and want to say, "Hi" first of all.

Now the question, "How can I make my own addressing index for registers and is it possible on register IC circuits?"

Ive been looking to build some of my own devices for some test equipment that I want to experiment with. A problem I want to overcome is space 1st of all, as Im looking to at running multiple devices for detection and measurement. Some are the same kind and others of various types, but I need to hold restraint to size, as I dont want to be tying 500 connections into a microcontroller/processor. (Ill explain)

I want to make my own addressing system regarding the sensor and sensor data input into an addressing index, that than, will follow the data line to the microcontroller/processor. Im wanting to use hardware components and assembly to assign registers to store the input data, send data both to microccontroller or to another addressed register, than matched, compared, or analyzed, from previous sets of data at some set register in regard to some address. Im looking to do this with as little tied into the micocontroller/processor as possible.

I was wanting to use multiple IC to do this with. Have 1 IC assigned for instance 0x0000 that contains registered information Ox0000 0x0000 - 0x0000 0x0007 for first IC than 2nd IC have 0x0001 0x0000 - 0x0001 0x0007 for addressing system amd so on.

By addressing this way I believe in theroy I should be able to hook up an unlimited number of devices I want to use until the microcontroller/processor bandwidth is taken up using limited number of connections to the microcontroller/processor itself. I was wanting to use sets of IC like registers to achive this. I was was looking at having 8 sensors hooked into 1 IC and than have all those sensors have addresses for individual HEX values (1 HEX at time of sample) across the register for(at) each sensor at each address for that sensor at that register.

So IC-0 has:
0x0000 Ox0000 + (HEX value)
0x0000 0x0001 + (HEX value)
0x0000 0x0002 + (HEX value)
....
IC-1
0x0001 0x0000 + (HEX value)
....
IC-65535
0xFFFF 0x0007 + (HEX value)
and so on until I reach the number of inputs I am requiring to accomplish my task.

I was wondering if this is possible? Is it practicle? Is this something I am going have to create entirely from ground up? Are registers able to have this degree of accessibilty and what type of IC are suggested for this?

I looked at shift registers for trying to accomplish such a task, but I did not see or find a way to address each individual input pin and have that sent through the data line for each pin on 1 IC. Ive seen where a byte of information can be sent through at a time with each clock cycle, but I am wanting to send 2bytes from each input pin (addressed) through a data line back to microcontroller/processor. At any given time on data line I need to have the ability to send 16bytes [addressed-input (2byte)] data along the data line from each IC along the circuit. If I have say, "3 IC with 8 input each" I need to be able to see each address and value for all 48bytes.

Sorry if this doesnt make sense, Ive been trying to follow data sheets to see if this is addressed, but I cant seem to find the information I am looking for.

I was wanting to write a script to use the Arduino (if possible) to input the data in registers [dont know if it can handle that kind of input or stress from addressed IC], than use a computer to compare data inputed. The Arduino is only going be used as go inbetween so I can attempt to use its IDE functionality also, if possible. I can also use a microprocessor development board, if the Arduino is unable to achive this. Im looking to not have the computer run this, but as a mapping system for the data input from the I/O. Thats part of the reason why I want HEX from my measurement (so I can have a higher degree of precision measurement) of the sensor data and addressed to each sensor. I am wanting to make an interface on the computer for the addressed Hex values coming in. There I can make a GUI to display the addressed data as I choose. Tablet is also going to be used with design for it to also have a GUI. This is going to run multi platform depending if home to look at data or away from work station.

Thank you and hope I did not confuse anyone.
All you need is a straightforward demultiplexer driving transfers or advanced or simple changes to associate the yield from the gadgets to normal sources of info. You can examine all the simple or advanced contributions to arrangement or select the contribution from any gadget on the grounds that each information has a discrete access address.
 

atferrari

Joined Jan 6, 2004
4,330
I immediately thought of I2C but then, there is a fundamental difference between those devices able to replay because they "know" their own ID and those that ignore what ID the designer has assigned to them.
 

BobTPH

Joined Jun 5, 2013
3,325
It would help to know what these sensors are. You have not even specified analog or digital. And, if digital, what form of communication.

Bob
 
Top