<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=Adding_XRAM_with_External_Memory_Interface</id>
		<title>Adding XRAM with External Memory Interface - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=Adding_XRAM_with_External_Memory_Interface"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=Adding_XRAM_with_External_Memory_Interface&amp;action=history"/>
		<updated>2026-04-28T18:58:43Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=Adding_XRAM_with_External_Memory_Interface&amp;diff=1289&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;With ATMEGA AVR like ATMEGA128, ATMEGA1280 or older types like 90S8515 you can access external RAM (SRAM) or other peripherals through its External Memory Interface. Search in...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=Adding_XRAM_with_External_Memory_Interface&amp;diff=1289&amp;oldid=prev"/>
				<updated>2013-02-13T12:23:20Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;With ATMEGA AVR like ATMEGA128, ATMEGA1280 or older types like 90S8515 you can access external RAM (SRAM) or other peripherals through its External Memory Interface. Search in...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;With ATMEGA AVR like ATMEGA128, ATMEGA1280 or older types like 90S8515 you can access external RAM (SRAM) or other peripherals through its External Memory Interface. Search in the Atmel ATMEGA datasheets for &amp;quot;External Memory Interface&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
For ATXMEGA devices see &amp;amp;nbsp;App Note:&amp;amp;nbsp;[http://www.atmel.com/Images/doc8058.pdf AVR1312: Using the XMEGA External Bus Interface]&amp;amp;nbsp;for details.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
For example for an ATMEGA1280 the external memory interface consist of PORTA (multiplexed data and address low byte), PORTC (address high byte), and PORTG[2:0] (RD, WR and ALE).&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;ATMEGA1280 pin connections to SRAM device:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Port A = Multiplexed Address low byte (A&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;....A&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;7&amp;lt;/span&amp;gt;) / Data (D0....D7) &amp;amp;lt;--------&amp;amp;gt; Direct connection to SRAM (D0...D7) and connected to Input D of octal latch (typically “74 x 573” or equivalent) to (A0.....A7) of SRAM chip&lt;br /&gt;
&lt;br /&gt;
Port C = Address high byte (A&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;....A&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;15&amp;lt;/span&amp;gt;) &amp;amp;lt;--------&amp;amp;gt; direct connection to for example SRM (A8....A15)&lt;br /&gt;
&lt;br /&gt;
Port G Pin 0 = WR (Write strobe to external memory) &amp;amp;lt;--------&amp;amp;gt; &amp;amp;nbsp;direct connection to for example SRAM WR&lt;br /&gt;
&lt;br /&gt;
Port G Pin 1 = RD (Read strobe to external memory) &amp;amp;lt;--------&amp;amp;gt; &amp;amp;nbsp;direct connection to for example SRAM RD&lt;br /&gt;
&lt;br /&gt;
Port G Pin 2 = ALE &amp;amp;nbsp;(Address Latch Enable to external memory) &amp;amp;lt;--------&amp;amp;gt; &amp;amp;nbsp;Connected to G Input of octal latch (typically “74 x 573” like&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;74 x 573&amp;lt;/span&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Example for 74HTC573 (TTL variant):&lt;br /&gt;
&lt;br /&gt;
[http://www.nxp.com/documents/data_sheet/74HC_HCT573.pdf http://www.nxp.com/documents/data_sheet/74HC_HCT573.pdf]&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Address latch with octal latch:&lt;br /&gt;
&lt;br /&gt;
The data bus and the low byte of the address bus is&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;multiplexed&amp;lt;/span&amp;gt;&amp;amp;nbsp;on Port A. The ALE signal indicates when the address is present. This low byte must be stored by a latch until the memory access cycle is completed.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Schematics for connecting the ATMEGA with octal latch and sram can be found in:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;13&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt; font-family: 'Arial Unicode MS', 'Lucida Sans Unicode', Arial;&amp;quot;&amp;gt;•&amp;lt;/span&amp;gt;&lt;br /&gt;
| Atmel AVR Studio Help File (AVR tools user guide) search for: &amp;quot;external memory interface&amp;quot; and scroll down to&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;APPENDIX&amp;lt;/span&amp;gt;. There you also find a list of 3.3 or 5V compatible SRAM's that can be used with ATMEGA's and there is a link to&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;STK503.pdf&amp;amp;nbsp;&amp;lt;/span&amp;gt;which is part of the help file.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;13&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt; font-family: 'Arial Unicode MS', 'Lucida Sans Unicode', Arial;&amp;quot;&amp;gt;•&amp;lt;/span&amp;gt;&lt;br /&gt;
| The list of compatible SRAM devices can be also found here:&amp;amp;nbsp;[http://www.atmel.com/images/stk503_ug.pdf http://www.atmel.com/images/stk503_ug.pdf]&amp;amp;nbsp;(page 16)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;13&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt; font-family: 'Arial Unicode MS', 'Lucida Sans Unicode', Arial;&amp;quot;&amp;gt;•&amp;lt;/span&amp;gt;&lt;br /&gt;
| The datasheet of for example ATMEGA1280 also include a picture which show the connections between AVR, Octal Latch external SRAM device.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
The data memory map for example for&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;ATmega640/1280/1281/2560/2561:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold;&amp;quot;&amp;gt;Hex-Address:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H00 .... &amp;amp;H1F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;32 Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H20 .... &amp;amp;H5F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;64 I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H60 .... &amp;amp;H1FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;416 external I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H200 .... &amp;amp;H21FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Internal SRAM (8K in this case)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;H2200 .... &amp;amp;HFFFF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;External SRAM (XRAM)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
XRAM will use an area in the remaining address locations in the 64K address space (&amp;amp;HFFFF). This starts at the address following the internal SRAM.&lt;br /&gt;
&lt;br /&gt;
Internal SRAM use the lowest 4,608/8,704 bytes, so when using 64KB (65,536 bytes) of XRAM,&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;60,478/56,832&amp;lt;/span&amp;gt;&amp;amp;nbsp;Bytes of XRAM are&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;available&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
See datasheet of ATMEGA device for a way to use the complete 64KByte.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
XRAM will be enabled by&amp;amp;nbsp;[[CONFIG_XRAM|CONFIG XRAM]]&amp;amp;nbsp;(config XRAM is setting SRE bit of the atmega 1280&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold;&amp;quot;&amp;gt;XMCRA&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold; font-weight: bold;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold;&amp;quot;&amp;gt;Register)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Pins of Port A, Port C and Port G from ATMEGA1280 are automatically enabled for XRAM and can not be used for other tasks by default if XRAM is enabled. The external memory address space can be divided in two sectors (upper and lower sector) with different wait-state bits. You can also release some Port C pins for other tasks (in the&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold;&amp;quot;&amp;gt;XMCRB&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold; font-weight: bold;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold;&amp;quot;&amp;gt;Register&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica-Bold; font-weight: bold;&amp;quot;&amp;gt;)&amp;amp;nbsp;&amp;lt;/span&amp;gt;. See atmega 1280 datasheet for details.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
See also:&amp;amp;nbsp;[[$XRAMSIZE]]&amp;amp;nbsp;and&amp;amp;nbsp;[[$XRAMSTART]]&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
You can clear the XRAM for example with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;For&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;N&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;Ramstart&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;To&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;Ramend &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(0, 128, 0);&amp;quot;&amp;gt;'replace RamStart and RamEnd with the real values&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(128, 0, 128);&amp;quot;&amp;gt;Out&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;N&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;,&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;0 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(0, 128, 0);&amp;quot;&amp;gt;'zero or any value you like&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Next&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
With XRAM, you should dim all your global variables with XRAM. Example:&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Dim&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;Var&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;As&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Xram&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Byte&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will leave the internal memory for the stacks and local created variables.&lt;br /&gt;
&lt;br /&gt;
You can also use&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;$default&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Xram&amp;lt;/span&amp;gt;&amp;amp;nbsp;when you do not want to add the XRAM to each DIM.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example 1:&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
A real Example for using SRAM and another Bus-mode device is WIZ200WEB from Wiznet.&lt;br /&gt;
&lt;br /&gt;
Here an ATMEGA128L, an&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;external 32K SRAM and a W5300 Ethernet Chip is used. See also&amp;amp;nbsp;[[CONFIG_TCPIP|CONFIG TCPIP]]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
The data memory map for ATMEGA128:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold;&amp;quot;&amp;gt;Hex-Address:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H00 .... &amp;amp;H1F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;32 Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H20 .... &amp;amp;H5F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;64 I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H60 .... &amp;amp;HFF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;160 external I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H100 .... &amp;amp;H10FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Internal SRAM (4K in this case)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;H1100 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;Start of External SRAM (XRAM)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
So the config is following&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;(&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H8000 = 32kByte):&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;$xramstart&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H1100&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;$xramsize&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H8000&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Config&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Xram&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;Enabled&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The W5300 Chip from Wiznet is setup to use Base Address &amp;amp;H8000.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
So the data memory map for ATMEGA128 is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold;&amp;quot;&amp;gt;Hex-Address:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H00 .... &amp;amp;H1F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;32 Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H20 .... &amp;amp;H5F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;64 I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H60 .... &amp;amp;HFF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;160 external I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H100 .... &amp;amp;H10FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Internal SRAM (4K in this case)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;H1100 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;Start of External SRAM (XRAM)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H8000 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Base Address of W5300 Chip from WIZNET&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H8400 .... &amp;amp;HFFFF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Not in use&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;See also&amp;amp;nbsp;[[CONFIG_TCPIP|CONFIG TCPIP]]&amp;amp;nbsp;for further details on W5300 Chip from Wiznet.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example 2:&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;We use now an WIZ830mj module (which uses a W5300 Chip from Wiznet) on a board with an 64/128KByte SRAM in combination with ATMEGA1280:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold;&amp;quot;&amp;gt;Hex-Address:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H00 .... &amp;amp;H1F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;32 Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H20 .... &amp;amp;H5F &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;64 I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H60 .... &amp;amp;H1FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;416 external I/O Registers&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica;&amp;quot;&amp;gt;&amp;amp;H200 .... &amp;amp;H21FF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Internal SRAM (8K in this case)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Helvetica; font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;H2200 .... &amp;amp;HFBFF &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;External SRAM (XRAM) upper and lower&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;HFC00 &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;Base Address of W5300 Chip over memory address selector&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;XRAM configuration here is:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;$xramstart&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H2200&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;$xramsize&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;HFBFF&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Config&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Xram&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;Enabled&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;Writing to the first XRAM address is done by:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(128, 0, 128);&amp;quot;&amp;gt;Out&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H2200&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;,&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H01&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;Reading from first XRAM is done by:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;Var&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;Inp&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;(&amp;amp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier;&amp;quot;&amp;gt;H2200&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The datasheet of W5300 say: &amp;quot;&amp;lt;span style=&amp;quot;font-family: 'Trebuchet MS';&amp;quot;&amp;gt;In the case of using an 8bit data bus width, ADDR[9:0] is used &amp;quot; so we have Address 0.......Address 9 but the SRAM need Address 0.....15.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: 'Trebuchet MS';&amp;quot;&amp;gt;Here an example of additional circuit between ATMEGA and W5300 and SRAM to solve the difference of address (A0...A15) for SRAM and (A0...A9) for W5300:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: 'Trebuchet MS';&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Adding xram 2.png|center|adding_xram_2]]&amp;lt;br/&amp;gt;&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 8pt; font-family: Courier; color: rgb(255, 0, 0);&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Base Address for W5300 (WIZ830mj) in this case is&amp;amp;nbsp;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;&amp;amp;HFC00&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;border: none; border-spacing: 0px;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;82&amp;quot; style=&amp;quot;width: 82px;&amp;quot; | &lt;br /&gt;
Address Bit&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;48&amp;quot; style=&amp;quot;width: 48px;&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A15&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A14&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A13&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A12&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A11&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A10&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A9&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A8&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A7&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A6&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A5&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A4&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A3&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A2&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A1&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;A0&amp;lt;/p&amp;gt;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;82&amp;quot; style=&amp;quot;width: 82px;&amp;quot; | &lt;br /&gt;
&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;Binary:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;48&amp;quot; style=&amp;quot;width: 48px;&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;82&amp;quot; style=&amp;quot;width: 82px;&amp;quot; | &lt;br /&gt;
&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;Hex:&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;48&amp;quot; style=&amp;quot;width: 48px;&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(255, 0, 0);&amp;quot;&amp;gt;FC00&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;p style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: MalgunGothicRegular; font-weight: bold;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
For older 90S8515 chips for example the maximum size of XRAM can be 64 Kbytes.&lt;br /&gt;
&lt;br /&gt;
Example: The STK200 has a 62256 ram chip (32K x 8 bit).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is some info from the BASCOM user list :&lt;br /&gt;
&lt;br /&gt;
If you do go with the external ram , be careful of the clock speed.&lt;br /&gt;
&lt;br /&gt;
Using a 4 MHz crystal , will require a SRAM with 70 nS access time or less. Also the data latch (74HC573) will have to be from a faster&lt;br /&gt;
&lt;br /&gt;
family such as a 74FHC573 if you go beyond 4 MHz.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also program an extra wait state, to use slower memory.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here you will find a pdf file showing the STK200 schematics:&lt;br /&gt;
&lt;br /&gt;
See Stk200_schematic.pdf for more information.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you use a 32 KB SRAM, then connect the /CS signal to A15 which give to the range of &amp;amp;H0000 to &amp;amp;H7FFF, if you use a 64 KB SRAM, then&lt;br /&gt;
&lt;br /&gt;
tie /CS to GND, so the RAM is selected all the time.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Xram.jpg|center|xram]]&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM_HARDWARE]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>