whats th logic behind not having full PORT pins ? (eg pd0->6 in 2313)

Go To Last Post
19 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello

 

i was thinking this for years.

 

does anyone understand th logic of not having full port pin's ?

like i said have PB0 -> PB7  but PD0 -> PD6 (minsing one) BUT also PA0 -> PA2

instead of PB0 -> PB7 and PD0 -< PD7 and PA0 -> PA1

 

?!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Not enough pins in the package. Happens also in the Megaxx8 series.

 

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 2

PA usually has analog peripherals attached to it, so they have different input protection circuitry and in general different I/O buffers design.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ka7ehk wrote:

Not enough pins in the package. Happens also in the Megaxx8 series.

 

Jim

 

its not the number i am saying but why porta has not a pin less to give it to portd to complete the byte

 

alexru wrote:

PA usually has analog peripherals attached to it, so they have different input protection circuitry and in general different I/O buffers design.

 

in 2313 case portb has analog.

 

however your idea or circuit specific per port name may give some logic to this !!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

in 2313 case portb has analog.

Well, it does have the Analog Comparator on that port.  Many/most AVR8 have a separate analog subsystem for the ADC (of which your mentioned family has none) including supply, ground, and reference.

 

 

 ...BUT also PA0 -> PA2 instead of ...

Who do you think the parents of your ATtiny2313/4313?  The venerable AT90S2313.  Check out the pinout of that bad boy.  See any PA0, PA1, or PA2 there?  Nope.  The improved Tiny version has given you a few extra pins to play with as alternate functions, if you choose >>not<< to use the primary functions for /RESET, XTAL1, and XTAL2.

 

You do the math; you make the choice.  If the pinout doesn't suit you, you'll just need to use a different model.

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hi theusch

 

i just ask/talk about the logic ! not if it "fit's" me or not

 

 

i know that older 90s2313 and older 90s1200 has less, but whats the logic behind NOT to choose to add the final missing PD7 (in pin RESET for example) BEFORE start adding pins from a different PORT !

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'd say it is all about backwards compatibility. The old 90S2313 only had 7 bits in port D, but the port is very likely addressed as a full byte by most programmers.
Now what will happen when the chip is replaced with a new one that suddenly starts wiggeling with an extra pin on that port? It is safer to place new port pins on a port that never existed on the old chip, don't you think?
That is my guess.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

but whats the logic behind NOT to choose to add the final missing PD7 (in pin RESET for example) BEFORE start adding pins from a different PORT !

Rough guess: silicon layout and routing. Atmel suffer the same routing problems inside chips as engineers do laying out PCBs outside the chip. It may just have been easier to drop a whole new "PORT" macro near some unused pins than route signals from an existing port to it.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

plouf wrote:

 

i was thinking this for years.

 

 

Years ?   Really

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274
get $5 free gold/silver https://www.onegold.com/join/713...

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I agree that it is frustrating sometimes when you want a full port on some of the smaller chips.

 

That said, I have one to board with an Xmega A something or other that is one of the 100 pin uC's.

It has more full ports than I know what to do with!

 

So, if its critical to your design, just use a larger micro...

 

Unless you are actually selling thousands of them, then the cost difference and board space will add up.

 

Another factor in the decision of which pins to include is that the silicon design already has certain alternative pin functions assigned to certain pins.

One can make a prioritized list so the alternative pin functions and select the pins to be included based upon that list.

Additionally, if Atmel has a contract for a large number of chips, and the user says they need Alternative Functions X, Y, and Z, but not A, B, and C, then once again the pins to be routed to external pins are defined.

 

JC 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Svuppe wrote:

I'd say it is all about backwards compatibility. The old 90S2313 only had 7 bits in port D, but the port is very likely addressed as a full byte by most programmers.
Now what will happen when the chip is replaced with a new one that suddenly starts wiggeling with an extra pin on that port? It is safer to place new port pins on a port that never existed on the old chip, don't you think?
That is my guess.

 

but not always.. i.e what about tiny1634 !? complete new desing pin incompatible with older 2313 etc, but yet lack full PORTB (which is the only full port in all old 90s) has full PORTA and a bit of D !!

 

 

DocJC wrote:

So, if its critical to your design, just use a larger micro...

 

i know that, just talk about the logic of that !

 

DocJC wrote:

Unless you are actually selling thousands of them, then the cost difference and board space will add up.

 

Another factor in the decision of which pins to include is that the silicon design already has certain alternative pin functions assigned to certain pins.

One can make a prioritized list so the alternative pin functions and select the pins to be included based upon that list.

Additionally, if Atmel has a contract for a large number of chips, and the user says they need Alternative Functions X, Y, and Z, but not A, B, and C, then once again the pins to be routed to external pins are defined.

 

yet again these are ASIC chips and not "general purpose mcu's"

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

plouf wrote:

but not always.. i.e what about tiny1634 !? complete new desing pin incompatible with older 2313 etc, but yet lack full PORTB (which is the only full port in all old 90s) has full PORTA and a bit of D !!

But tiny1634 was never meant to replace the 90S2313. The tiny2313 was, and that is why its port behavior should be backwards compatible.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Svuppe wrote:

 

But tiny1634 was never meant to replace the 90S2313. The tiny2313 was, and that is why its port behavior should be backwards compatible.

 

 

correct...

yet again lack's Full port pins even if it has extra ports !

 

(lacks full portc.6 and portc.7 while  has portb.0 to 3)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

plouf wrote:

Hello

 

i was thinking this for years.

 

does anyone understand th logic of ...

 

?!

 

 

http://s.hswstatic.com/gif/chevrolet-bel-air-37.jpg

 

Hello--

 

I was thinking about this for years.

 

Why did the 1959 Chevrolet Bel Air have such distinct tail fins?

 

?!

 

Please tell what these designers were thinking on this detail.  No matter how many times y'all shrug your shoulders and suggest asking the manufacturer, I will repeat my query.

 

 

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Why did the 1959 Chevrolet Bel Air have such distinct tail fins?

It has 4 full-size I/O ports though.

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here

No guarantees, but if we don't report problems they won't get much of  a chance to be fixed! Details/discussions at link given just above.

 

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It has 4 full-size I/O ports though.

Only on the V8 models, though, and only then when the proper fuses are used.

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

theusch wrote:

 

 

Hello--

 

I was thinking about this for years.

 

Why did the 1959 Chevrolet Bel Air have such distinct tail fins?

 

?!

 

Please tell what these designers were thinking on this detail.  No matter how many times y'all shrug your shoulders and suggest asking the manufacturer, I will repeat my query.

 

 

 

yet again, you can ask this in a car/chevrolet forum for discussion , and it would not be strange to ask ;)

 

Last Edited: Sun. Mar 1, 2015 - 10:16 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If you have a MyAtmel account(if you do not then get one, they are free!) I suggest you log into it and open a helpdesk ticket regarding this.  They are pretty good at getting back with an answer.

 

Me personally, if a port is missing a pin, it's no big deal as a 7bit port is perfect for an LCD interface as an example.

 

Another reason for some ports to appear incomplete could be compiler/assembler driven.  Some PORTC pins IIRC also have the alternate function of JTAG, so it's possible that in order to keep custom macros in the compiler/assembler to a minimum they put a PORTC on the chip, but only with the pins to support JTAG for example.  This same thought may also follow with other ports.

 

Long and the short of it, open a ticket in MYAtmel and get the factory response! indecision

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

yet again, you can ask this in a car/chevrolet forum for discussion , and it would not be strange to ask ;)

 

About as strange as your persistent request here.  Why would frequenters of that forum, typically  "ChevyFreaks", have any insight or verified knowledge about why the decision was made sometime in the past by the designers?  So any posting would just be hearsay, right?

 

['Freaks have been sworn to secrecy on this, but as you won't give up I must share...the reason for the incomplete ports is to frustrate firmware porting efforts to that other brand of microcontroller.]

 

 

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.