Received: from PCH.mit.edu (18.7.21.50) by mail.efplus.com (192.168.0.8) with Microsoft SMTP Server (TLS) id 8.3.485.1; Fri, 5 Jun 2020 04:01:56 -0700 Received: from PCH.MIT.EDU (localhost.localdomain [127.0.0.1]) by PCH.mit.edu (8.14.7/8.12.8) with ESMTP id 055As6h0023475; Fri, 5 Jun 2020 06:54:09 -0400 Received: from outgoing-exchange-7.mit.edu (OUTGOING-EXCHANGE-7.MIT.EDU [18.9.28.58]) by PCH.mit.edu (8.14.7/8.12.8) with ESMTP id 055As4Cl023472 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 5 Jun 2020 06:54:04 -0400 Received: from w92exedge3.exchange.mit.edu (W92EXEDGE3.EXCHANGE.MIT.EDU [18.7.73.15]) by outgoing-exchange-7.mit.edu (8.14.7/8.12.4) with ESMTP id 055Ar6QY006780 for ; Fri, 5 Jun 2020 06:53:08 -0400 Received: from w92exhyb3.exchange.mit.edu (18.7.71.73) by w92exedge3.exchange.mit.edu (18.7.73.15) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Fri, 5 Jun 2020 06:53:22 -0400 Received: from oc11exhyb6.exchange.mit.edu (18.9.1.111) by w92exhyb3.exchange.mit.edu (18.7.71.73) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 5 Jun 2020 06:54:02 -0400 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.173) by oc11exhyb6.exchange.mit.edu (18.9.1.111) with Microsoft SMTP Server (TLS) id 15.0.1395.4 via Frontend Transport; Fri, 5 Jun 2020 06:54:02 -0400 Received: from MWHPR19CA0069.namprd19.prod.outlook.com (2603:10b6:300:94::31) by DM5PR01MB3258.prod.exchangelabs.com (2603:10b6:3:f5::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3066.18; Fri, 5 Jun 2020 10:54:01 +0000 Received: from CO1NAM03FT021.eop-NAM03.prod.protection.outlook.com (2603:10b6:300:94:cafe::d4) by MWHPR19CA0069.outlook.office365.com (2603:10b6:300:94::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3066.18 via Frontend Transport; Fri, 5 Jun 2020 10:54:01 +0000 Received: from mail-ej1-f54.google.com (209.85.218.54) by CO1NAM03FT021.mail.protection.outlook.com (10.152.80.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3066.18 via Frontend Transport; Fri, 5 Jun 2020 10:54:01 +0000 Received: by mail-ej1-f54.google.com with SMTP id mb16so9615588ejb.4 for ; Fri, 05 Jun 2020 03:54:01 -0700 (PDT) Received: by 2002:a54:3a43:0:0:0:0:0 with HTTP; Fri, 5 Jun 2020 03:53:58 -0700 (PDT) From: Jason White To: Microcontroller discussion list - Public. Sender: "piclist-bounces@mit.edu" Date: Fri, 5 Jun 2020 03:53:58 -0700 Subject: Re: [EE] Detecting a change of level on four lines with digital logic/analog circuitry? Thread-Topic: [EE] Detecting a change of level on four lines with digital logic/analog circuitry? Thread-Index: AdY7KLq//V5IqEoxTAe9qwhbMYRgJQ== Message-ID: References: List-Help: List-Subscribe: , List-Unsubscribe: , In-Reply-To: Reply-To: Microcontroller discussion list - Public. Accept-Language: en-US X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-AuthSource: TS500.efplus4.local X-MS-Has-Attach: X-Auto-Response-Suppress: All X-MS-Exchange-Organization-SenderIdResult: Pass X-MS-Exchange-Organization-PRD: mit.edu X-MS-TNEF-Correlator: received-spf: Pass (protection.outlook.com: domain of gmail.com designates 209.85.218.54 as permitted sender) receiver=protection.outlook.com; client-ip=209.85.218.54; helo=mail-ej1-f54.google.com; dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=HPCJ5lNwhqCZBzD0IVVkX3IprErznWCWvn2KGc6IUk8=; b=dKre70qzgltqYnToRslZDHrcoK5O++m2U+/xD5X3wbkpxu9082STRpYSBvEEKuvMrQ K1jMwsIhTz1tUBLt+kvyc3PYrxQpTbRnVq0wFR5gkxcmD9T5mjbaailEC03vnpsLLTfS G0LpgomfyUGCf9PTF0GUW1G9paAO8uyFy2CST1zzG7laMq7kKgKX2BlcVhPimafhVlg/ vD9pnNRAvoHyNHXe7l7f7BEUdJOBExO2uP6VHB8EWt3TbuPPKAreqhfs1GQwvHk9C7F0 4wBnP/ze4eA5K5nzJDswPcUncRcYJhqHmbM3ll5v3+cyqJR5pubN58AluC1cwAILw6Qs eXXw== authentication-results: spf=pass (sender IP is 209.85.218.54) smtp.mailfrom=gmail.com; mit.edu; dkim=pass (signature was verified) header.d=gmail.com;mit.edu; dmarc=pass action=none header.from=gmail.com;compauth=pass reason=100 errors-to: piclist-bounces@mit.edu list-id: "Microcontroller discussion list - Public." list-post: x-beenthere: piclist@mit.edu x-mailman-version: 2.1.6 x-received: by 2002:a17:906:470c:: with SMTP id y12mr8325989ejq.336.1591354439181; Fri, 05 Jun 2020 03:53:59 -0700 (PDT) x-topics: [EE] x-content-filtered-by: Mailman/MimeDel 2.1.6 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Hello Forrest, I agree with you about the microcontrollers. Though, I can't change the requirements. Assuming that I can't find a smaller implementation (such as the analog one) the XOR gates do look attractive. On Friday, June 5, 2020, Forrest Christian (List Account) < lists@packetflux.com> wrote: > It's too bad that programmable devices are not permitted... This is > perfect for an edge trigger on a microcontroller, or a tiny programmable > logic device. I would argue that using the functions available on a > modern programmable device is going to be at least as reliable as any > discrete logic/component solution. > > But... > > Take four xor gates (1 single 74hc86) each wired as a 'edge to glitch' > converter - that is, wire each line directly to one input pin and through= a > rc filter to the other input pin. This has the effect of slightly delayi= ng > the input to the second input pin, creating a situation where you get a > brief pulse on the output on each edge as it catches up with the > non-delayed first pin. > > You can then insert a diode into the output line, creating a 'wired or' f= or > the output, so if *any* of the units have an edge, you get a pulse. > Direction of diode and whether you need a pullup/pulldown resistor is le= ft > as an exercise to the reader. > > Once you have that pulse, feel free to use an HC123 or a 555 to stretch i= t > out. > > Or you could just try to convince whoever made the 'no programmable > devices' policy that something like a PIC16F15313 which can be factory > programmed by microchip is smaller, cheaper, and is just as reliable. > Plus, it is highly likely that the entire function you describe can be do= ne > in one of the inbuilt "core independent peripherals" which wouldn't even > require the core to be running, and the latency if done right wouldn't be > any more than the discrete solution. Or you can save a few cents if you > can tolerate a bit of interrupt latency. Of course, I can understand tha= t > sometimes in an application the 'black box' nature of a programmable devi= ce > isn't really possible to use. But those applications are typically the > type where you're going to have to qualify everything. > > On Thu, Jun 4, 2020 at 2:47 PM Jason White < > whitewaterssoftwareinfo@gmail.com> wrote: > > > Hi everyone, > > > > I have an application where I need to generate at pulse least 1 > microsecond > > long any time a rising or falling edge is detected on four digital line= s. > > The four signals can change at any time to any direction. The pulse is > used > > to trigger a timer providing a reset signal to the rest of the system. > > Microcontrollers and programmable logic devices aren't allowed. > > > > Four 74HC123s will do it, but are too big. > > Four window comparators monitoring the signal through an RC will do it, > but > > also seems too big. > > > > Is four schmitt trigger XOR gates with four RC's the smallest > > implementation? > > > > I was thinking some sort of analog implementation might be able to do i= t > > smaller. But AC coupling the four signals together would allow them to > > cancel out. Perhaps a 4-bit encoder/decoder or multiplexer might do it > > better? > > > > Regards, > > Jason White > > -- > > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive > > View/change your membership options at > > http://mailman.mit.edu/mailman/listinfo/piclist > > > > > -- > - Forrest > -- > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist > --=20 Jason White --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .