HOME  |  NEWS  |  BLOGS  |  MESSAGES  |  FEATURES  |  VIDEOS  |  WEBINARS  |  INDUSTRIES  |  FOCUS ON FUNDAMENTALS
  |  REGISTER  |  LOGIN  |  HELP
Comments
You must login to participate in this chat. Please login.

Excellent details  Thanks Eric

Iron

still getting caught up.

Iron

hello all from Edmonton, Alberta

Iron

Good presentation and walk-thru.  The slides, especially diagrams and use of coloring along with the lecture are much better than reading an article or Comp. Sci. text and help greatly to supplement those.

thank you, Eric. You made a very good lecture.
Iron
archive is good for us, especially when we can't attend live session
Iron

From application to application each metric has its priority and have to be weighed on system requirements and HW design.

Iron

Looking forward to tommorrow

Iron

Late, but I'm here

 

Iron

Thank you. See you tomorrow.

Iron

thanks Eric, the journaling FAT solution is interesting to look into.

Iron

Thanks Eric but too late, it was chosen for me!  LOL Cya tomorrow

Iron

Thanks everyone for attending, see you tomorrow for the lecture titled "Choosing the right storage media"!

Blogger

gaun: yes, since it means more writes to the device it will result in more wear, but with proper wear leveling this shouldn't be a problem (SD cards implement wear leveling).

Diagnostics, if they are run everytime a card is inserted would mean that you'd have to wait several minutes each time, so I wouldn't run them everytime, if at all. With a journaled FAT, you wouldn't have to run diagnostics at all since it wouldn't be possible to corrupt the FAT metadata (which is what diagnostic tools check).

Blogger

@eric : Does journaling cause wearing of the flash? Also should a diagnostic be run everytime a card has been inserted? If yes what types?

Iron

gaun: assuming you don't overwrite existing data and just append to a file, you should be fine if you're using a journaled FAT volume, assuming your backing device cannot replace an existing sector with unrelated garbage.

Blogger

@gaun,  Then I'd use the supercap to buffer the battery.  If its critical, then go towards redundancy. If you're writing new data (new file), then I'm thinking you'll have a minimum of three sectors to right out to complete a file closure.  All depends (as it so often does!  :)

Iron

You also have to make sure that you battery-backup can suffice at any time for your application, which might not be easy to prove and may require that you limit the size of your biggest writes.

Blogger

@mharkins: I too am using SD card. A portable medical device which is worn by the patient can have a lot of failure from vibration to battery falling off.  So a super cap is one option.

Iron

@Gaun  I'd be afraid that a super cap wouldn't have enough storage capacity for a complete file update.  My guess is you'd be better off using a battery, but a lot would depend on the file hardware you're interfacing to.  I'm interfacing with SD card, and that's a lot of current at times.

Iron

@Atlant, Or you can use MS's approach.  Just ship it!

Iron

Atlant: yes, of course, testing is always the hardest part!

Blogger

gaun: I must admit that I'm not an expert with regards to hardware, but I suppose "a super capacitor or something" could help! The key is you need to be able to have a grace period where you're allowed to finish your ongoing FS operations.

Blogger

eric:

> I wouldn't recommend writing your own filesystem unless you have lots of spare time on your hands!

It's the testing that kills you! Just doing the power-cut testing (and the resulting failure analysis) is hard, hard work!

Iron

kentj:

> Does anyone here now know if you need a 32-bit processor for FAT32 or will a 16-bit work?

In theory, any "Turing  complete" processor can do anything so yes, as long as you have enough "compute performance" and buffer memory, any processor can be made to process any file system.

Iron

gaun: FAT with a journaling module would be relatively safe, but you would have to implement something in your application to provide absolute data safety, if you're using a logical journal. Some other FS exist and provide more reliability than FAT at the cost of compatibility with major OSes, which might or not be a problem, depending on your application. I wouldn't recommend writing your own filesystem unless you have lots of spare time on your hands!

Blogger

@eric: In your mitigation strategies for preventing corruption you had mentioned that a Brown voltage can be detected and data written to the disk. Should this be done using a backup power like a super capacitor or something?

Iron

jcabas: not very much, LFN entries have a checksum against their associated short file name in order to ensure they really belong to following normal directory entry, but there aren't any checksums on the FAT table. Some disk checking utilities will be able to detect some amount of corruption, however.

Blogger

@eric: Any other FS's for embedded which is at least relatively safe? Also if regulation and compliance need safety without corruption would you recommend writing own filesystems for embedded devices?

Iron

Thanks Eric  great presentation.

Iron

THanks Eric another great presentation.

Thanks to DN and digikey et. al.

 

Iron

does FAT32 do any error checking of its fat/diretory structure to avoid/signal coruption at all ?

Iron

gaun: ZFS would, as they checksum everything, but it's of course not a very good fit to embedded systems

Blogger
caa028: well you shouldn't do that if you have less than 392 bytes, you should restrict the write to the total length you want write and not go into the loop if you don't need to.
Blogger

Thanks Eric.  Lots of information..

[QUESTION] Eric: Are there any other file systems which is able to detect a corruption?

Iron
gaun: With FAT, there's no way to ensure the data hasn't been corrupted other than implementing some sort of checksum yourself.
Blogger

[QUESTION] Eric: In the case of FS corruption especially in medical devices I need to take care that the vital signs data is written correctly. In this even a detection of a corrupt filesystem is fine. Can this be ensured?

Iron

Thank you, Eric and Lauren!

Iron

Thanks Eric and Lauren

Iron

RMR: At the level of the filesystem, essentially all filesystems just act as though each file is a "bag of bytes". If there's any sort of record-oriented structure imposed on the file, it's imposed from a higher level than that of the filesystem.

 

Iron

Excellent as always! Many thanks.

Iron

gaun: I'll talk about wear leveling on day 5.

Blogger

thank you that was great!

 

 

Iron

Thanks  Lauren and Eric.

Iron

Very informative lecture!

Iron

Very interesting. Thanks so much.

Iron

Great presentation Eric... Thanks

Iron

Excellent. Danke schon.

Iron

Thanks Eric and Lauren; Very smooth web presentation

Iron

Thanks! I really liked the alignment challenge slides--well written and identifies a great point.

Iron

Thank you for today's presentation Eric

Iron

[QUESTION] Eric: For safety could you elaborate on wear levelling for SD cards and flash file systems?

Iron

Intermittent (mechanical) I/O failure at read/write operations leads to data corruption

better late than never

Iron

@Alaskaman66 : Glad you liked the DSP book. You can also refer to "The data conversion handbook" by Analog devices. You can google it.

Iron

Cache Miss - Data not found in Cache, so processor has to eventually do a Memory I/O

Cache Hit - Data found in Cache

Eric,

Under CPM there were 2 file types sequential and another type with predefined record size.   Is this still a factor?

Do they survive?

Iron

What is meant by "cache miss"?

Iron

Hi all

Eric I am not currently doing file work but if I were, as you say it would depend on the application.  Having said that most work I do involves relatively small data rates so efficiency would be a priority.

 

Iron

Hello from San Jose USA

Iron

And if there is less than 392 bytes total size... The first BufFill() will wait forever?

Iron

hello from melbourne australia

hello from Greensboro, nc

Iron

It does not start on 0 in 512 buffer

Iron

Requires two sector writes to get the full 512 bytes

You need two sectors for that much data

Iron

Smaller file size is also important

consistant performance

Iron

Size and speed/performance

Iron

size and cpu utilization

Iron

Concerned with low usage of Ram and ROM.

Iron

latency is big here as well

 

Reliability and data integrity is foremost

Iron

for a file system, I care most on the use of RAM.

Iron

performance is more important

Iron

Sorry.....have not used embedded file systems, yet.

 

Iron

1. RAM/Rom
2. CPU usage

Iron

Latency & CPU Usage, spcifically for low power applications

 

I would look more for throughtput

 

Iron

Currently, mostly focused on Ram Rom usage.  Throughput isn't an issue so far.

Iron

I care most about latency

Iron

Concerned with low usage of Ram and ROM.

Iron

We care about all performance factors in balance.

Iron

Hello from grey sky and cold Atlanta

 

Iron

Hello from Montreal

 

@Kentj....no problem

 

Iron

Kentj: I mentioned this yesterday but one thing to be careful of is that not all USB sticks actually flush everything out to the underlying Flash Drive in a predictable amount of time. We saw some that didn't flush until another write came along and pushed things through, seemingly no matter how long you waited!

 

So test, test, and test some more!

Iron

Audio is loud and clear...

Iron

Audio is up, and it is good

@Deb C:  Thanks, I wasn't watching.

Iron

Here we go, audio is up!

Iron

@Atlant, Yes I agree.  FOr instance, we have a fixed file name that we respond to.  Simplified a lot of code.  We don't use long file names.  Removed a ton more. Don't need to create a directory, just update,  Etc Etc.

Iron

Good afternoon all from cloudy and cold Toronto

Iron

Audio is up, here.

Iron

Gaun: Started reading your ref on DSP for scientists and engineers. Think that would be one to add to the old library

mharkins: That's kind-of what I was implying. If you're creating a FAT32 volume (that is to be read by others), then you only need to implement those features you want to support.

 

But if you want to work with the general case of "All FAT32 volumes using all possible combinations of features", then there's a lot more work to do to get it right.

Iron

In my project I want to make as much as possible automatic, but it looks like I will have to have the user push a button and watch an LED change from red to green so they know when to take the flash drive out.

Iron

Hello again from Cedar Park

Iron

@Atlant  I was going for the smallest code size possible.  Thus the path I took.  I did investigate a whole bunch of different implementations including the linux open source examples.  Most were overly complicated for what I needed, or used too much address math instead of simple structures and pointers, for me to wrap my feeble mind around.  Chan did a good job on his code.

Iron

I was learning Ubuntu Linux.  It was easier before the latest revision.

Iron

Happy huMp day, y'all.

@Kenj  Yes, I've trained assemblers too, and it might be the interest level that helps.  Sometimes I'll be talking to an installer.  Some of these guys don't realize that  you can buy screwdrivers that have blade widths less than a half inch.  When it comes to computer literacy to the level of reformating an SD card, it was just an issue.  So to make the product as user friendly as possible....

Iron

"sorces" -> "sources"

Iron

gaun: Don't forget that you can always refer to the Linux (open-source) sorces and see how *THEY* implemented FAT32!

Iron

@gaun  There's a lot to consider to implement from scratch.  That'd be tough IMO.  I started with a copy of CHan's system (one of the best written IMO) then stripped out what I didn't need, and added the functions I needed to interface on the level I needed.

Iron

Good Morning from Valdez

Cluster has been the same (not size though) since the DOS days but some things have changed slightly.  Like block used to be a sector on a track.

Iron

hello, from Richmond, BC

Iron

gaun: A lot depends on how "high fidelity" you want your implementation to be. Writing (Creating) a valid (readable) FAT32 volume can be a lot easier than being able to read every possible FAT32 volume in the world.

Iron

@mharkins:  I have experience showing assemblers how to troubleshoot.  It helps when they actually have an interest.

Iron

Kentj: There are limits to both aspects (the size of individual files and the size of the overall device). The biggest single factor in both is the "cluster size" for the device. Search the slide deck(s) for that term.

Iron

@mharkins: How hard was it to implement? I am thinking of implementing FAT32 from scratch and would want to konw how complex does it get.

Iron

@Atlant:  That's what I was wondering.  I did see that slide but wasn't sure if it was file size or device size.  So I guess even FAT16 might work for my purpose.

Iron

@Kentj  Well, it could be that your Joe User is smarter than mine!  :)  THe people I sometimes deal with don't know how to insert the card right.  I think of them as sales men! (which come to think about it, must of the one's I have trouble with are!  :)

Iron

Kentj: Either yesterday's or Monday's slide deck listed the explicit size limits for the various file systems.

Iron

@mharkins:  I've talked Joe User through formatting a USB flash drive but even I haven't used SD cards yet.

Iron

@Atlant:  I did.  I must have missed that one.

Iron

And have you ever tried to talk Joe User through formating a card!  LOL

Iron

Kentj: See yesterday's slide deck.

Iron

@Kentj  Our application uses an SD card for customers to easily configure the product, and copy configurations between product (product is an HVAC thermostat).  SD cards 2Gs and under are Fat16.  I initially released with Fat16 only, but the smaller SD cards are getting tough to get in the field, thus the Fat 32.

Iron

mharkins: Because the rest of the world does?

Iron

Are the size limits on the different FATs file size or device size?

Iron

Greetings from Massachusetts 

Iron

@mharkins:  Why use FAT16 and FAT32?  I'm new to FAT so "inquiring minds want to know."

Iron

I was trying to get 1M readings per second off of two 24-bit ADCs, and a 32 bit counter.  But even after offloading the host communications from the PIC32 it looks like I'm going to have to settle for 500K

Iron

Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/yoNGeY

Platinum

@KentJ -- Asymetric Multi Processing -- ASMP -- hey you're at the bleeding edge! Congrats!

Iron

@KentJ  I just finished implementing Fat16/Fat32 system in a renesas r8c part.

Iron

Greetings from eastern Mass. Cold rainy  37°F.

Iron

hello from Timisoara, Romania

Iron

@DaveWR: Thank you.  I'm using a PIC32 and a PIC24.  I wanted to use the PIC24 for USB and Ethernet, downloading firmware updates on a flash drive while using the PIC32 for the rest of the instrument.

Iron

Signing in from Chicago. At least it stopped snowing here.

Iron

@KentJ -- Even an 8 bit MCU will work. Just more overhead -- more cycles to load RAM etc.

Iron

Hello from Tennessee.

Iron

Does anyone here now know if you need a 32-bit processor for FAT32 or will a 16-bit work?

Iron

Hi everyone from Toronto.

Iron

Howdy folks!!  (From the hills of Southwest Missouri!)  :)

Hello from Sunny Lake Simcoe Ontario Canada

Iron

Greetings from Raleigh NC

Iron

The streaming audio player will appear on this web page when the show starts at 2pm eastern today. Note however that some companies block live audio streams. If when the show starts you don't hear any audio, try refreshing your browser.

Platinum

Everyone, good morning.

Iron

@erhk:  I'm originally from Washington state but have been down here in Richmond, TX for almost a year.  I'm still learning where everything is in relation to where I am.  I have a grandson living in El Paso though.

Iron

@erhk:  where in Texas?

Iron

Good morning from Texas

Iron

Good morning from Edmonton, AB

Iron

Greetings from Vermont, 35F and overcast

Iron

Good Morning from San Jose, CA.

It's 52°F and a High of 58°F. Rain Tonight.

Iron

Good morning all, from sunny 53F Richmond, TX

Iron

Good Morning from Rainy Boston!

Iron

Be sure to click 'Today's Slide Deck' under Special Educational Materials above right to download the PowerPoint for today's session.

Platinum

Good morning from Scottsdale, AZ

Iron

Good morning from cloudy NY.

Iron

Good morning from Portland Oregon

Iron

Good morning from VT

 

Good Morning from GA

Iron

Good Morning from MOBILE, AL

Whatever problems existed yesterday for the slide deck link seem to have been fixed.  From a quick skim of day 3 topics this looks like some good real world practical stuff.

Today slide deck is working... getting slides

getting tomorrow's slide deck!

Iron

Actually, Monday was http://downloads.deusm.com/designnews/CEC-March-4-Day-1-File-Systems.ppt . But Tuesday was http://downloads.deusm.com/designnews/CEC-March-5-Day-2-Files-Systems.ppt and apparently Wed picked up Tuesdays link spelling mis-match.

http://downloads.deusm.com/designnews/CEC-March-6-Day-3-Files-Systems.ppt works as a link.

The embedded link is spelled 3-File-Systems . The working link uses Files-Systems, same as Monday and tuesday.

Slide deck download for March 6 Day 3 is an error: 404 at 2013-03-05 10:04 (GMT-5).



Partner Zone
Latest Analysis
The first Tacoma Narrows Bridge was a Washington State suspension bridge that opened in 1940 and spanned the Tacoma Narrows strait of Puget Sound between Tacoma and the Kitsap Peninsula. It opened to traffic on July 1, 1940, and dramatically collapsed into Puget Sound on November 7, just four months after it opened.
Noting that we now live in an era of “confusion and ill-conceived stuff,” Ammunition design studio founder Robert Brunner, speaking at Gigaom Roadmap, said that by adding connectivity to everything and its mother, we aren't necessarily doing ourselves any favors, with many ‘things’ just fine in their unconnected state.
When my daughter decided she wanted to study engineering, I was very proud of her. At the same time, in the back of my mind, I wondered if she knew what she was in for.
AutoDesk has teamed up with 3D scanner provider Artec to link CAD software and 3D scanners to make it faster and easier to create accurate 3D mesh models for printing or digital use.
Last year you helped Design News and Allied Electronics crown its first-ever Gadget Freak of the Year, and we need your help again. Vote in round 2 of our second-annual contest.
More:Blogs|News
Design News Webinar Series
11/19/2014 11:00 a.m. California / 2:00 p.m. New York
11/6/2014 11:00 a.m. California / 2:00 p.m. New York
10/7/2014 8:00 a.m. California / 11:00 a.m. New York
12/11/2014 8:00 a.m. California / 11:00 a.m. New York
Quick Poll
The Continuing Education Center offers engineers an entirely new way to get the education they need to formulate next-generation solutions.
Dec 1 - 5, An Introduction to Embedded Software Architecture and Design
SEMESTERS: 1  |  2  |  3  |  4  |  5  |  6


Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.
Last Archived Class
Sponsored by Littelfuse
Learn More   |   Login   |   Archived Classes
Twitter Feed
Design News Twitter Feed
Like Us on Facebook

Sponsored Content

Technology Marketplace

Copyright © 2014 UBM Canon, A UBM company, All rights reserved. Privacy Policy | Terms of Service